linux 学习 常用命令

Posted 小禾点点

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 学习 常用命令相关的知识,希望对你有一定的参考价值。

 以下命令是本人的CentOS6.5系统

一、linux个目录的作用

 

#linux个目录的作用
    /bin  所有用户都可使用的命令
    /sbin 超级用户(root)可以使用的命令
    /boot 系统目录建议不要操作该目录
    /dev  设备的目录 比如网卡
    /etc   linux默认的配置文件目录
    /home 普通用户的家目录  
    /lib  系统调用的函数库保存位置
    /lost+found 当系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里,当系统启动的过程中fask工具会检测这里并修复已经损坏的文件系统,这个目录只在每股分区中出现/lost+found 就是根分区的设备回复目录;/boot/lost+found就是/boot分区的设备恢复目录
    /media :挂载目录 系统建议的用来挂载媒体设备的 例如软盘和光盘
    /mnt 过载目录 建议挂载额外设备 如:u盘移动硬盘
    /misc 挂载目录 建议挂载NFS服务的共享目录
    /opt 第三方 软件安装目录。就是安装和放在其他软件的位置  但大家都放在/user/local/目录中
   /proc 虚拟文件系统 ,该目录中的数据不会保存到硬盘中,而是保存在内存中的。主要保存系统的内核,进程、外部设备的状态和网络状态等
   /sys 虚拟文件系统 和/proc 类似 主要保存内核相关信息
   /srv 服务数据目录  一些系统服务启动

 

二、文件操作命令

  

#查看当前所在目录
[root@localhost ~]# pwd
#创建一个目录
[root@localhost ~]# mkdir jalja 
#查看该目录下的所有文件
[root@localhost ~]# ls
anaconda-ks.cfg  install.log  install.log.syslog  jalja
#切换目录
[root@localhost ~]# cd jalja
#创建层级目录
[root@localhost jalja]# mkdir -p books/javas
#返回指定的目录
[root@localhost books]# cd /root/
#进入上次所在目录
[root@localhost ~]# cd -
#进入上层目录
[root@localhost books]# cd ..
#删除空目录
[root@localhost books]# rmdir javas/
#删除目录(包括非空目录)
[root@localhost books]# rm -rf js/
#复制时保留文件属性
[root@localhost ~]# cp -p install.log jalja/
#创建文件(在tm 目录下创建文件tm0) 
[root@localhost tools]# touch tm/tm0
#可以查看隐藏文件 linux 隐藏文件以.开头
[root@localhost ~]# ls -a   
#查看文件大小
[root@localhost ~]# ll -h
#查看目录的信息 (jalja 是root下的哟个目录)
[root@localhost ~]# ls -ld jalja 
drwxr-xr-x. 4 root root 4096 5月  20 05:05 jalja

#剪切
[root@localhost tmp]# mv test/Japan/cangjing /root

1、在文件(fcarloan_log|)中查找某段内容 xxx

[root@fcarloan01.intranet.test.tj1 logs]# tail -500000 fcarloan_log|grep 43498

############################ vim   #####################################
i :进入编辑模式
:wq 保存退出
dd 删除行

cat 文件名 ; 输出文件内容

#打开文件后光标定位到最后一行
[root@localhost jalja]# vim + test
#打开文件后光标定位到第5行
[root@localhost jalja]# vim +5 test
#打开文件后 光标定位到 te 字母的行
[root@localhost jalja]# vim +/te test

三、压缩与解压缩

压缩 与解压缩
常用压缩格式 .zip  .gz  .bz2  .tar.gz   .tar.bz2
1、zip格式与windows中的zip格式一样可以通用
#压缩zip格式的目录
[root@localhost tools]# zip -r tm.zip tm
#压缩zip格式的文件
[root@localhost tools]# zip t.zip test.txt
#解压zip格式的文件
[root@localhost tools]# unzip t.zip

2、.gz 格式
   #压缩为gz格式
  [root@localhost tools]# gzip test.txt
  #解压缩
  [root@localhost tools]# gunzip test.txt.gz
3、bz2  不支持压缩目录
#压缩为bz2文件 且保留 原文件 (-k 保留源文件)
[root@localhost tools]# bzip2 -k test.txt
#解压 不保留源文件
[root@localhost tools]# bunzip2 test.txt.bz2

4、文件打包
   语法格式:tar -cfv  打包后的文件名  原文件名

5、直接压缩为 .tar.gz 格式
    [root@localhost tools]# tar -zcvf tm.tar.gz tm
    #解压缩
    [root@localhost tools]# tar -zxvf tm.tar.gz
6.直接压缩为 .tar.bz2
  [root@localhost tools]# tar -jcvf tm.tar.bz2 tm
  #解压缩到指定位置
  [root@localhost tools]# tar -jxvf tm.tar.bz2 -c /jalja/
#查看压缩文件里的内容
[root@localhost tools]# tar ztvf tm.tar.gz

四、用户管理

###############################查看磁盘空间############################
df 查看磁盘分区的使用情况
################################du统计文件大小#######################################

###################################### 用户管理 ###############################################
[root@localhost etc]# groupadd sexy 创建用户组 sexy
[root@localhost etc]# cat group  查看用户组文件  sexy是否创建
[root@localhost etc]# groupmod -n market sexy 修改用户组名字 sexy 为market
[root@localhost etc]# groupmod -g 668 market  修改组编号  market 为668
[root@localhost ~]# groupadd -g 888 boss 创建用户的同时创建 组编号
[root@localhost ~]# groupdel market  (先删除用户组的用户) 删除 用户组
[root@localhost ~]# useradd -g sexy zsf  给用户组添加用户
[root@localhost ~]# useradd -d /home/JALJA jalja  创建用户的时候 给用户添加文件夹  如果不指定 系统会在home下创建与用户名相同的文件夹

[root@localhost ~]# usermod -c wdcsr zsf 给用户添加备注
[root@localhost ~]# userdel zwj 删除用户 不删除用户信息(个人文件夹)


[root@localhost ~]# gpasswd -a zsf boss  给用户添加附属组
[root@localhost ~]# gpasswd -d zsf boss   移除所在的附属组
[root@localhost ~]# newgrp boss zsf  切换用户组(如果需要密码)

[root@localhost ~]# gpasswd jalja 给用户组设置密码

[root@localhost ~]# su username 切换用户

[root@localhost ~]# chfn jalja  设置用户资料
[root@localhost ~]# finger jalja 查看用户资料

################################### 用户控制 #############################################
[root@localhost ~]# touch /etc/nologin 限制普通用户登录
[root@localhost ~]# passwd -l zsf 锁定账户
[root@localhost ~]# passwd -u zsf 解锁用户
[root@localhost ~]# passwd -d zsf 清除用户密码

################################# 登录日志 ##############################################
[root@localhost ~]# w
[root@localhost ~]# last
[root@localhost ~]# lastlog

五、网络相关


######################################网络安全###########################################
service iptables stop //关闭防火墙
开启: service iptables start


方法一:命令行方式
1. 开放端口命令: /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
2.保存:/etc/rc.d/init.d/iptables save
3.重启服务:/etc/init.d/iptables restart
4.查看端口是否开放:/sbin/iptables -L -n

方法二:直接编辑/etc/sysconfig/iptables文件
1.编辑/etc/sysconfig/iptables文件:vi /etc/sysconfig/iptables
加入内容并保存:-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
2.重启服务:/etc/init.d/iptables restart
3.查看端口是否开放:/sbin/iptables -L -n


###########################################网络命令###############################
1、ping ip //一直输出 2、ping -c 3 ip //输出次数 3、ifconfig 查看当前计算机的网卡信息 4、[root@localhost ~]# ifconfig #本地真实网卡 eth0 Link encap:Ethernet HWaddr 00:0C:29:44:D5:21 # Link encap:Ethernet 网络类型 HWaddr:马克地址(物理地址) inet addr:192.168.6.193 Bcast:192.168.6.255 Mask:255.255.255.0 # inet addr是ip地址 inet6 addr: fe80::20c:29ff:fe44:d521/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:49 errors:0 dropped:0 overruns:0 frame:0 #RX 收包 TX packets:47 errors:0 dropped:0 overruns:0 carrier:0 #TX 发包 collisions:0 txqueuelen:1000 RX bytes:6249 (6.1 KiB) TX bytes:5399 (5.2 KiB) # 收包数据大小 Interrupt:19 Base address:0x2000 #发包数据大小 lo Link encap:Local Loopback #回换网卡 inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:16 errors:0 dropped:0 overruns:0 frame:0 TX packets:16 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:1352 (1.3 KiB) TX bytes:1352 (1.3 KiB) 5、ifconfig eth0 ip 临时更改网络地址 6、[root@localhost ~]# last 查看计算机的用户登录 退出 日志 7、[root@localhost ~]# lastlog 查看所有用户最近一次登录时间 8、[root@localhost ~]# lastlog -u jalja 查看特定用户的最近一次登录记录 9、通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径 traceroute www.baidu.com 10、 [root@localhost ~]# netstat -t 查看 TCP协议信息 tcp相当于打电话 Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 64 192.168.6.193:ssh 192.168.6.223:53140 ESTABLISHED 11、 [root@localhost ~]# netstat -u 查看UDP协议相当于打电话 Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State 12、[root@localhost ~]# netstat -tlun 查看当前计算机所启动的服务(占用的端口号) Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:42468 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 :::60419 :::* LISTEN tcp 0 0 :::111 :::* LISTEN tcp 0 0 :::22 :::* LISTEN tcp 0 0 ::1:631 :::* LISTEN udp 0 0 0.0.0.0:55588 0.0.0.0:* udp 0 0 0.0.0.0:806 0.0.0.0:* udp 0 0 0.0.0.0:825 0.0.0.0:* udp 0 0 0.0.0.0:111 0.0.0.0:* udp 0 0 0.0.0.0:631 0.0.0.0:* udp 0 0 :::806 :::* udp 0 0 :::55645 :::* udp 0 0 :::111 13、[root@localhost ~]# netstat -an 查看正在连接的网络信息 14、 [root@localhost ~]# netstat -rn 查看网关 Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192.168.6.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

六、软件包安装

#########################软件包#############################
一、源码包
        脚本安装包
二、二进制包(centos 系统 RPM包、系统默认包)
    源码包经过编译后的rpm格式的二进制文件
    1、-rpm 命令管理
        a、对于没有安装的软件包使用包全名
        b、对于安装过的软件包可以使用包名
    2、rpm软件包查询
        [root@localhost Packages]# rpm -q python  查询python是否安装
        [root@localhost Packages]# rpm -qa  查询所有已经安装的软件包
        [root@localhost Packages]# rpm -qa | grep python  查询所有 有python关键字的软件包
        [root@localhost Packages]# rpm -qi python 查询包的详细信息
        [root@localhost Packages]# rpm -qip libreoffice-langpack-hr-4.0.4.2-9.el6.i686.rpm  查询未安装包的信息
        [root@localhost Packages]# rpm -ql python 查询包中的文件安装位置
        [root@localhost Packages]# rpm -qlp libreoffice-langpack-hr-4.0.4.2-9.el6.i686.rpm 查询未安装的软件包中文件的默认安装位置
        [root@localhost Packages]# rpm -qR python 查询软件包要依赖的包
        [root@localhost Packages]# rpm -qRp libreoffice-langpack-hr-4.0.4.2-9.el6.i686.rpm
        查询未安装的软件包所要依赖的软件包

七、系统命令

#定时重启  [root@localhost tools]# shutdown -r 03:30
#立即重启  [root@localhost tools]# shutdown -r now()
#取消前一个关机任务  [root@localhost tools]# shutdown -c
#关机 [root@localhost tools]# shutdown -h

系统运行级别  init  0-6
#查看当前系统 级别 [root@localhost ~]# runlevel

#退出登录 [root@localhost ~]# logout

########################################服务器的操作原则#####################################
#远程服务器不允许服务器不允许关机,只能重启,重启时应该关闭服务
#不要再服务器访问高峰期运行高负载命令
#远程配置防火墙时不要把自己提出服务器

 

以上是关于linux 学习 常用命令的主要内容,如果未能解决你的问题,请参考以下文章

Linux学习:软件包管理+常用命令

跨年学习:测试人常用linux命令

Linux常用命令汇总(带代码示例)

Linux_学习_01_常用命令大全

Linux学习笔记-Linux常用命令

Linux 常用命令学习