Linux常用命令

Linux常用命令

命令格式:命令 -选项 参数
如:ls -la /usr
文件处理命令
ls
(list)作用:显示目录文件
常用选项:
-a all 显示所有文件,注意隐藏文件,特殊目录.和…
-l(long) 显示详细信息
-i 查看文件的i(inode)节点 数
-R(recursive) 递归显示当前目录下所有目录
-r (reverse) 逆序排序
-t(time) 按修改时间排序
ll 相当于 ls –l
cd
(change directory) 作用: 切换目录
/ 切换到根目录
… 回到上一级目录
. 当前目录
显示并打开到上一次操作的目录
~ 当前用户的宿主目录(eg:# cd ~用户名 进入某个用户的家目录)
pwd
显示当前工作目录(print working directory)
touch
创建空文件或更新已存在文件的时间
eg:touch newfile
touch a.txt b.txt touch {a.txt,b.txt} 同时创建多个文件
创建带空格的文件 eg:touch “program files” 在查询和删除时也必须带双引号
备注:生产环境中,文件名,一定不要加空格
mkdir
创建目录(make directoriy)
-p 父目录不存在情况下先生成父目录 (parents)
Eg: mkdir linux/test 如果目录linux不存在,则报错,使用参数-p即可自动创建父目录。
cp
复制文件或目录(copy)
cp –选项 源地址 目录地址
-r 递归处理,将指定目录下的文件与子目录一并拷贝(recursive)
-R 源文件或目录 目的目录 (复制目录必须加-R)
-p 保留文件属性 (原文件的时间不变)
1,相对路径 cp –R /etc/* . cp –R …/aaa …/…/test/
2,,绝对路径 cp –R /ect/service /root/test/aa/bb
mv
移动文件或目录、文件或目录改名(move)
mv 源文件或目录 目的目录
rm
删除文件(remove)
-r 删除目录要加-r (recursive)同时删除该目录下的所有文件
eg: rm -rf /aaa/bbb 删除bbb目录下的所有,aaa目录未删除
-i 删除前逐一询问确认
-f(force 强制) 强制删除文件或目录 即使原档案属性设为唯读,亦直接删除,无需逐一确认
删除目录时,如果确认删除目录,而不确认删除目录下文件时,目录不会被删除,因为文件还对目录有依赖

注意:工作中,谨慎使用rm –rf 命令。
扩展点:删除乱码文件
一些文件乱码后使用rm -rf 依然无法删除
此时,使用ll -i 查找到文件的inode节点
然后使用find . -inum 查找到的inode数 -exec rm {} -rf ;
就能顺利删除了

rmdir 删除空目录(remove directoriy)

cat
(catenate)显示文件内容 -A 显示所有内容,包括隐藏的字符
eg:cat /etc/services
tac 倒着显示文件内容
more
分页显示文件内容
空格或f 显示下一页;enter键 显示下一行;q或Q 退出
less
浏览文件 与more类似,区别是less可往回查看
空格或f 显示下一页;enter键 显示下一行;q或Q 退出
上下箭头 翻行 pgUP 向上翻页,pgDn 向下翻页
还可以搜索,直接/关键字,还可以按n(next)查找搜索到的结果
head
查看文件前几行(默认10行) -num [文件名]
eg:head -20 /etc/services
tail
查看文件的后几行 -num [文件名] -f (follow) 动态显示文件内容
获取一个大文件的部分文件,可使用head或tail命令
head -n 100 /etc/services >config.log
file
查看文件的类型
eg:file /etc/services 查看services文件的类型
ln
产生链接文件 link
-s [源文件] [目录文件] 创建软链接 源文件必须是完整目录
eg:ln -s /etc/service /service.soft
创建文件/etc/service的软链接/service.soft
Eg:/etc/service /service.hard
创建文件/etc/service的硬链接/service.hard
软连接类似于windows下的快捷方式
软连接文件格式:
lrwxrwxrwx. 1 root root 13 Jul 20 07:50 service -> /etc/services
1 硬链接数量,如果该文件没有硬链接,就只有本身一个硬链接。
13链接文件的长度
格式解析(特征):
1, 软连接的文件类型是 l(软连接),软连接文件的权限 都是 lrwxrwxrwx
2,-> 箭头指向到源文件
真正的权限取决于对源文件的权限
时间值为创建软连接的时间
软连接可以跨文件系统生成
硬链接特征
1,相当于 cp -p +同步更新
2,通过i节点识别,与源文件有相同的idnode节点
3,硬链接不能跨分区,ln /home/test/issuels /boot/test (错误)
4,不能针对目录使用 ln /tmp/ aa.hard (无法将目录/tmp 生成硬链接)
删除软连接
rm -rf symbolic_name 注意不是rm -rf symbolic_name/

Linux命令的分类
内部命令:
属于Shell解析器的一部分,也称为内建(Built-IN)指令。
内部命令属于Shell的一部分,所以并没有单独对应的系统文件,只要Shell解释器被运行,内部指令也就自动载入内存了,用户可以直接使用。内部命令无需从硬盘中重新读取文件,因此执行效率更高。
内部命令找不到命令所在路径。
cd 切换目录(change directory)
pwd 显示当前工作目录(print working directory)
help 帮助
外部命令:
指的是Linux系统中能够完成特定功能的脚本文件或二进制程序,每个外部命令对应了系统中的一个文件,是独立于Shell解析器之外的文件程序。Linux系统必须知道外部命令对应的文件位置,才能够由Shell加载并执行。
ls 显示文件和目录列表(list)
mkdir 创建目录(make directoriy)
cp 复制文件或目录(copy)
查看帮助文档
内部命令:help + 命令(help cd)
外部命令:man + 命令(man ls)
type命令
用来区分指定命令是由shell自带的,还是由shell外部的独立二进制文件提供的
$ type cd
系统会提示,cd是shell的自带命令(build-in)。
$ type grep
系统会提示,grep是一个外部命令,并显示该命令的路径。
Linux系统默认会将存放外部命令、程序的目录(如/bin、/usr/bin、/usr/local/bin等)添加到用户的“搜索路径”中,当使用位于这些目录中的外部命令时,用户不需要指定具体的位置。
因此:不用刻意去分辨内部、外部命令,其使用方法是基本类似的。

帮助命令
man
manual命令或配置信息
eg:man ls man services
(查看配置文件时,不需要配置文件的绝对路径,只需要文件名即可)
调用的是more命令来浏览帮助文档,按空格翻下一页,按回车翻下一行,按q退出。
使用/加上关键的参数可直接定位搜索
eg: /-l 直接查看-l的介绍
/关键字 按n 查找下一个,按 shift+n 查找上一个
扩展:man的级别 (帮助文档的类型, 了解1 5 7 即可)
man man-pages 查看每一种类型代表的含义 man文档的类型(1~9)
1是命令,5是配置文件,man优先显示命令
eg:man 5 passwd (5代表配置文件级别)

help
help 查看shell内置命令的帮助信息
eg:help cd
内置命令,使用whereis,which,man都不能查看
info
info [任何关键字] 查看相应命令的详细介绍信息
whatis
whatis [任意关键字] 获得相关命令的简短说明信息
执行权限 All User
whereis
which
命令名 --help
命令名 --help 列举该命令的常用选项
Eg: cp --help
文件搜索命令
find
查找文件或目录 find [搜索路径] [搜索关键字]
如果没有指定搜索路径,默认从当前目录查找
find命令选项
-name 按名称查找
eg:find /etc -name init 在目录/etc中查找文件init
-size 按文件大小查找
以block为单位,一个block是512B +大于 -小于 不写是等于
eg:find /etc -size -204800 在etc目录下找出大于100MB的文件
100MB=102400KB=204800block
-user 按宿主用户查找
eg:find / -user sam 在根目录下查找所有者为sam的文件
-type 按文件类型查找
f 二进制文件 l 软连接文件 d 目录 b 块设备文件 c 字符设备文件 p 管道文件
eg: find /dev -type c

扩展:find查找中的字符匹配:
*:匹配所有,?:匹配单个字符
eg:find /etc -name init??? 在目录/etc中查找以init开头的,且后面有三位的文件
find查找的基本原则:占用最少的系统资源
eg:
如果明确知道查找的文件在哪一个目录,就直接对指定目录查找,不查找根目录/

grep命令
搜索文件中匹配符
grep 在文件中搜寻字串匹配的行并输出
grep [-acinv] [–color=auto] ‘搜寻字符串’ filename
选项与参数:
-a :将 binary 文件以 text 文件的方式搜寻数据
-c :输出匹配行的次数(是以行为单位,不是以出现次数为单位)
-i :忽略大小写,所以大小写视为相同
-n :显示匹配行及行号
-v :反向选择,显示不包含匹配文本的所有行。
eg:grep ftp /etc/services
eg:#grep -v ^# /etc/inittab 去掉文件行首的#号
eg:# grep –a “id” /etc/inittab 搜索在inittab文件中,包含id的数据
eg:# grep -n “init”/etc/inittab 显示在inittab文件中,init匹配行及行号
eg:# grep -c“init”/etc/inittab 显示在inittab文件中,init匹配了多少次
which
显示系统命令所在目录(绝对路径及别名)
which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令
which ls
alias ls=‘ls --color=auto’
/bin/ls
which zs
/usr/bin/which: no zs in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ch/bin)
whereis
搜索命令所在目录 配置文件所在目录 及帮助文档路径
eg: which passwd 和 whereis passwd
eg:查看passwd配置文件的帮助,就用 man 5 passwd

网络通信命令
netstat
(network statistics) 主要用于检测主机的网络配置和状况
-a 显示所有连接和监听端口
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-p 显示建立相关链接的程序名
eg:# netstat -tlnu 查看本机监听的端口
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
协议 待收数据包 待发送数据包 本地ip地址:端口
#netstat -au 列出所有 udp 端口

#netstat -a 列出所有端口
nestat -at 列出所有tcp端口
#netstat -an 查看本机所有的网络连接
ifconfig
网卡网络配置详解
选项 [-a] [网卡设备标识] -a:显示所有网卡信息
ping
测试网络的连通性
-c 指定发送次数
ping 命令使用的是icmp协议,不占用端口
eg: # ping -c 3 127.0.0.1
压缩解压缩命令
gzip
压缩(解压)文件,压缩文件后缀为.gz gzip只能压缩文件,不能压缩目录;不保留原文件
-d将压缩文件解压(decompress)
-l显示压缩文件的大小,未压缩文件的大小,压缩比(list) gzip –l xxx.gz
-v显示文件名和压缩比(verbose)
-num用指定的数字num调整压缩的速度,-1或–fast表示最快压缩方法(低压缩比),-9或–best表示最慢压缩方法(高压缩比)。系统缺省值为6
eg: # gzip -9 aa.txt 压缩文件,9是压缩比例,默认为6,数字越大,压缩比例越高(文件越小)
数字越大,文件越小
数字越小,文件越大
gunzip
(gzip -d) 解压缩.gz的压缩文件
eg:gunzip file2.gz

bzip2
压缩(解压)文件,压缩文件后缀为.bz2
选项[-k] [文件] -k:产生压缩文件后保留原文件(压缩比高)
-c 将压缩的过程产生的数据输出到屏幕上
-d 解压缩的参数(decompress)
-num 同gzip
用指定的数字num调整压缩的速度,-1或–fast表示最快压缩方法(低压缩比),-9或–best表示最慢压缩方法(高压缩比)。系统缺省值为6
bunzip2
(bzip2 -d) 解压缩
eg: bzip2 -k test.bz2 test 压缩后保留了原文件
bunzip2 -k test.bz2 加-k 保留压缩包,不保留无需加
zip
压缩(解压)文件,压缩文件后缀为.zip
zip 选项[-r] [压缩后文件名称] [文件或目录] 压缩目录需要 -r
eg:zip services.zip /etc/services 压缩文件; zip -r test.zip /test 压缩目录
如果不加-r选项,压缩后的文件没有数据。
unzip
解压.zip的压缩文件
tar
文件、目录打(解)包
-c 建立一个压缩文件的参数指令(create)
-x 解开一个压缩文件的参数指令(extract)
-z 以gzip命令压缩/解压缩
-j 以bzip2命令压缩/解压缩
-v 压缩的过程中显示文件(verbose)
-f 使用档名,在 f 之后要立即接档名(file)
tar -cf -xf 单独 压缩 解压缩
tar -z 以gzip打包目录并压缩 文件格式.tar.gz(.tgz)
tar -j 以bzip2打包目录并压缩 文件格式.tar.bz2
eg:tar -zcvf dir1.tar.gz dir1 使用gzip将目录dir1压缩成一个打包并压缩文件dir1.tar.gz
eg: tar -zxvf dir1.tar.gz 解压到当前目录
tar -zxvf dir1.tar.gz -C(大写的) /root 解压到指定的/root目录
eg: tar -cvf bak.tar . 将当前目录的文件打包为bak.tar
eg: tar -xvf bak.tar 解压
eg: tar -zcvf bak.tar.gz bak.tar 或 gzip bak.tar 使用gzip将打包文件bak.tar压缩为bak.tar.gz
eg: tar -jcvf bak.tar.bz2 bak.tar 或 bzip2 bak.tar 使用bzip2将打包文件bak.tar压缩为bak.tar.bz2
eg: tar -rvf bak.tar /etc/password 将/etc/password追加文件到bak.tar中®
eg: tar -ztvf a.tar.gz 查看压缩包内容
eg:tar -cjvf test.tar.bz2 test 生成test.tar.bz2的压缩文件
eg:tar -xjf test.tar.bz2 解压
最常用:
tar –zcvf 压缩
tar –zxvf 解压
磁盘空间命令
df命令
用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息。
df -h(human-readable) 根据目前磁盘空间和使用情况 以更易读的方式显示
df -k  以千字节KB 为单位显示各分区的信息
df -a  显示所有分区包括大小为0 的分区
du命令
linux中du命令参数用于查看文件或目录的大小(磁盘使用空间)。
du -a(all) /home  以字节为单位显示/home 目录下每个子文件的大小
du -b /home  以字节为单位显示/home 目录下各个子目录的大小
du -h /home 以K,M,G为单位显示/home 文件夹下各个子目录的大小
du -sh /home  以常用单位(K,M,G)为单位显示/home 目录的总大小 -s summarize
du -h --max-depth=0 /home
–max-depth=n表示只深入到第n层目录,此处设置为0,即表示不深入到子目录。
进程管理命令
ps命令
查看系统中的进程信息
常用选项
a:显示所有用户的进程
u:显示用户名和启动时间
x:显示没有控制终端的进程
e:显示所有进程,包括没有控制终端的进程
l:长格式显示
w:宽行显示,可以使用多个w进行加宽显示
f:显示程序间关系
查看系统中所有进程
#ps aux #查看系统中所有进程,使用BSD操作系统格式
#ps -le #查看系统中所有进程,使用Linux标准命令格式
ps应用实例
# ps 查看隶属于自己的进程
# ps -u or ps -l 查看隶属于自己进程详细信息
# ps -le or ps -aux 查看所有用户执行的进程的详细信息
ps -aux | grep sam 查看用户sam执行的进程
# ps -le | grep init 查看指定进程信息
最常用:
ps –aux
ps –ef | grep xxx
扩展:
eg:ps -ef|grep *** 查询进程,如果有多个,可再加通道|grep ***
删除进程时,如果有多个进程,不能直接区分启动的目录
则可以使用 cd /proc/PID,再ll一下,就能看到启动的目录了

pstree 查看当前进程树

kill
关闭进程
kill进程号
kill -9 进程号(强行关闭) 常用
kill -1 进程号(重启进程)
系统关机命令
shutdown [选项] 时间
选项: -c: 取消前一个关机命令 -h:关机 -r:重启
eg:shutdown -h now 立即关机 shutdown -h 20:30 定时关机
reboot 重启系统 reboot -h now 立即重启
其他关机命令 halt poweroff init 0
其他重启命令 init 6
注意:生产环境中,关机命令禁止执行。
如果没有必须,禁止执行重启命令。
其他常用命令
top
查看系统健康状态
作用:进程状态显示和进程控制,每3秒钟自动刷新一次(动态显示)
显示当前系统中耗费资源最多的进程,已经系统的一些负载情况。
free 显示当前内存和交换空间的使用情况
free
命令查看内存使用状态
free [-b|-k|-m|-g]
选项:
-b: 以字节为单位显示
-k: 以KB为单位显示,默认就是以KB为单位显示
-m: 以MB为单位显示
-g: 以GB为单位显示
wc 命令
wc 统计文本的行数、字数、字符数(word count)
-l lines 统计文件的行数
-w words 统计文件的单词数 (英文单字)
-c bytes 统计文件的字节数
-m chars 统计文件字符数
eg:#wc
输入字符,按ctrl+d结束,输出统计结果
eg:# wc /etc/services
10774 58108 641020 /etc/services
依次为:行数 单词数 字符数 文件名
eg:#wc << hello
输入字符,直到输入hello才结束并统计
eg:cat test.txt |wc -l 用wc命令做到只打印统计数字不打印文件名

学习Linux的好习惯
善于查看man page(manual)等帮助文档
利用好Tab键 自动补全
掌握好一些快捷键
ctrl + c(停止当前进程)
ctrl + z 挂起当前进程,放后台
ctrl + r(查看命令历史)
ctrl + l(清屏,与clear命令作用相同)
方向箭头 上 下 可以查看执行过的命令

时间命令
hwclock 硬件时钟
date 软件时钟
hwclock --hctosys 根据硬件时钟来同步软件时钟
hwclock --systohc 根据软件时钟来同步硬件时钟
设置硬件时间
hwclock --set --date=“10/30/14 00:00” 格式:月/日/年 时:分:秒
设置软件时间
法一: date 11121314 11月12日13点14分
法二: date -s 12/31/2015 date -s 13:14:00 设置时间为2015年12月13日,13时14分
同步系统时间 时间同步
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
该命令作用:把当前时区调整为上海就是+8区
ntpdate us.pool.ntp.org
该命令作用:利用ntpdate同步标准时间
可以加入定时计划任务,每隔10分钟同步一下时钟:
crontab -e
添加如下:
0-59/10 * * * * /usr/sbin/ntpdate us.pool.ntp.org | logger -t NTP

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会飞的乌龟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值