linux 常用命令

命令大全

ls 列出(ls -lahSF)

参数 功能
-l 列出文件详细信息,包括文件类型、权限、链接数、所有者、组、大小、最后修改时间和文件名, --time-style=iso 加上这个能显示年份,默认不展示
-a 列出所有文件,包括隐藏文件
-h 以易读的方式显示文件大小,例如K、M、G等
-d 只查看目录信息,而不查看目录下的文件
-R 递归列出所有子目录下的文件
-t 按文件最后修改时间排序
-r 反向排序
-S 按文件大小排序
-i 显示文件的inode号
-F 在文件名后添加符号,用于表示文件类型
ls -l ,描述的第一列:
当为 d 则是目录
当为 - 则是文件;
若是 l 则表示为链接文档(link file);
若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

mkdir 创建文件夹 (mkdir -p /d1/d2{a,b,c})

参数 功能
-m --mode=MODE 设置新目录的文件模式,即权限。与 chmod 命令中的模式相同,具体请参考 chmod 的帮助。
-p --parents 递归创建目录,即如果指定的上级目录不存在则先创建上级目录,再创建当前目录。
-v --verbose 创建新目录后,打印一条信息。
-Z --context[=CTX] 将新创建的目录设置为 SELinux 安全上下文 CTX。
–help 显示帮助信息并退出。
–version 显示版本信息并退出。

mikidr fe{1,2,3} 可以创建出fe1、fe2、fe3 三个文件夹

rmdir 删除文件夹

参数 功能
-p --parents 递归地删除目录,当子目录被删除后,如果父目录变为空,则也一并删除。
-v --verbose 删除目录后,打印一条信息。

rmdir只能删除空目录。要删除非空目录及其内容,可以使用rm -r命令。
使用rmdir时,务必确认目录是空的,以防止数据丢失。

rm 删除 (rm -rf [!(file)])

参数 功能
-i 删除前逐一询问确认。
-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。

|-r |将目录及以下之档案亦逐一删除。

保留某些文件:

  • 保留多个 m -rf !(1.txt|2.txt)
  • 保留一个 m -rf !(1.txt)
  • 保留指定文件 m -rf !(.txt)
    删除目录下文件,不删除目录: rm -f rumenz/

cp 赋值(cp [-R])

参数 功能
-a 这是归档选项,用于复制目录及其所有子目录和文件。这等同于-dpR参数的组合。
-b 如果要复制的目标文件已存在,使用此选项会创建其备份。
-d 如果源文件是链接文件,该选项将保留链接而不是链接指向的文件。
-f 如果目标文件已存在,使用此选项将强制覆盖目标文件。
-i 这是交互模式,在覆盖目标文件前要求用户确认。
-l 创建源文件的硬链接,而不是复制文件。
-L 如果源文件是链接文件,该选项将复制链接指向的文件。
-p 保留源文件的原始文件属性(如日期和权限)。
-R 递归复制,常用于复制目录及其所有子目录和文件。
-s 创建源文件的符号链接,而不是复制文件。
-u 如果目标文件已存在,且源文件比目标文件新,此选项将更新目标文件。
-v 显示复制进度。

cat 显示或连接文件 (cat -n)

参数 功能
-A 显示不可打印字符,并在行尾显示$
-b 显示行号,行号添加在非空行前面
-E 显示行结束字符$
-n 显示包含行号的输出
-s 压缩连续的空行输出
-T 显示制表符为^I
-v 显示不可打印字符
文件 要显示或连接的文件
  1. 将三个文件合并到一个文件查看 cat demo.txt test.txt demo2.txt > combined.txt
  2. 备份/复制 cat test.jpg > test2.jpg
  3. 创建文件 cat > test2.jpg

find 查找 (find path -opt)

参数 功能
-name <pattern> 根据文件名模式匹配查找文件,支持通配符。
-type <type> 按照文件类型查找,如f表示普通文件,d表示目录。
-size <size> 按照文件大小查找,支持使用+和-表示大于或小于指定大小。[+-]size[cwbkMG]:按文件大小查找,支持使用 + 或 - 表示大于或小于指定大小,单位可以是 c(字节)、w(字数)、b(块数)、k(KB)、M(MB)或 G(GB)
-user <username> 按照文件所有者查找。
-group <groupname> 按照文件所属组查找。
-mtime <days> 按照文件修改时间查找,以天为单位。正数应该表示时间之前,负数表示时间之内
-exec <command> {} + 对搜索结果执行指定命令,{}代表搜索到的文件

找并执行操作(例如删除):
find /path/to/search -name "pattern" -exec rm {} ;

mv 移动或重命名 (mv source dest)

参数 功能
-b 当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份。
-i 如果指定移动的源目录或文件与目标的目录或文件同名,则会先询问是否覆盖旧文件,输入 y 表示直接覆盖,输入 n 表示取消该操作。
-f 如果指定移动的源目录或文件与目标的目录或文件同名,不会询问,直接覆盖旧文件。
-n 不要覆盖任何已存在的文件或目录。
-u 当源文件比目标文件新或者目标文件不存在时,才执行移动操作

chmod修改文件或目录的权限(chmond [-R] ug+r,o-r file1.txt)

参数 功能
u 指定用户权限
g 指定用户组权限
o 指定其他用户权限
a 指定所有用户权限(u、g和o的组合)
+ 增加权限
- 移除权限
= 设置权限
r 读取权限
w 写入权限
x 执行权限
数字模式 使用数字表示权限,4读r 、2写w、1执行x
文件/目录 指定要修改权限的文件或目录
-R 对目前目录下的所有文件与子目录进行相同的权限变更(即以递归的方式逐个变更)

chown修改文件或目录的所有者(chown -R file1.txt)

用法:chown [-cfhvR] [--help] [--version] user[:group] file..

参数 功能
-c 只在发生改变时显示处理信息
-R 递归地更改文件夹和文件的所有者
--from 指定当前所有者的名称
--reference 使用参考文件或目录的所有者和组
  • 将文件 file1.txt 的拥有者设为 runoob,群体的使用者 runoobgroup :
    chown runoob:runoobgroup file1.txt
  • 把 /home/runoob 的关联组设置为 512 (关联组ID),不改变所有者:
    chown :512 /home/runoob
  • PS: 组id ,可用id 用户来获取展示:如
    [root@VM-12-9-opencloudos usr]# id root
    uid=0(root) gid=0(root) groups=0(root)

du(disk usage)查看文件或目录的磁盘使用情况(du -h path)

参数 功能
-h, --human-readable 以人类可读的格式显示文件大小 (例如 1K, 234M)
-s, --summarize 显示总计磁盘使用量
-c, --total 类似于"–summarize",但包括每个文件的大小
-d, --max-depth=N 限制显示的目录深度为N层,使用:d1 = 1层深度
–exclude=PATTERN 排除与PATTERN匹配的文件或目录
-B, --block-size=SIZE 指定块大小 (默认为1K)

df显示文件系统的磁盘空间使用情况,包括挂载点和可用空间(df -hT)

参数 功能
-h 以人类可读的方式显示磁盘空间(以K、M、G为单位)
--total 显示所有列的总计信息
-T 显示文件系统类型
-i 显示inode信息(文件索引节点)
--output 指定要显示的列,以逗号分隔,$ df --output=Filesystem,Size,Used,Avail
--help 显示帮助信息

ln为某一个文件在另外一个位置建立一个同步的链接(ln [-s] source dest)

ln [参数][源文件或目录][目标文件或目录],不加参数默认创建硬链接

参数 功能
--backup[=CONTROL] 备份已存在的目标文件
-b 类似 --backup ,但不接受参数
-d 允许超级用户制作目录的硬链接
-f 强制执行
-i 交互模式,文件存在则提示用户是否覆盖
-n 把符号链接视为一般目录
-s 软链接(符号链接)
-v 显示详细的处理过程

Linux文件系统中,有所谓的链接(link),我们可以将其视为档案的别名,而链接又可分为两种 : 硬链接(hard link)与软链接(symbolic link),硬链接的意思是一个档案可以有多个名称,而软链接的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。

不论是硬链接或软链接都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。

软链接:
1.软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
2.软链接可以 跨文件系统 ,硬链接不可以
3.软链接可以对一个不存在的文件名进行链接
4.软链接可以对目录进行链接

硬链接:
1.硬链接,以文件副本的形式存在。但不占用实际空间。
2.不允许给目录创建硬链接
3.硬链接只有在同一个文件系统中才能创建

tar压缩/解压

tar是一种打包格式,z参数(gzip)是压缩方式,如果不加z,那么仅仅只是打包而已。原来文件还在。

参数 功能
-c 创建新的归档文件(打包)
-x 从归档文件中提取文件(解包)
-f <文件名> 指定归档文件名,这个参数是最后一个参数,必须注意
-v 显示操作的详细信息
-z 通过gzip压缩归档文件
-j 通过bzip2压缩归档文件
-C <目录> 切换到指定目录
--exclude=<模式> 排除匹配模式的文件,如: tar -cf documents.tar --exclude='*.txt' /home/user/documents
--list 列出归档文件的内容 ,而无需实际提取它们
创建归档文件:将文件 file1、file2 和 directory 打包到一个名为 archive.tar 的归档文件中。
tar -cvf archive.tar file1 file2 directory

解压到指定文件夹
tar -C ./local -xzvf haha

gzip压缩/解压(gzip [-d(解压)] file)

只是压缩,不会像windows那样打包,操作多个文件,就是分别压缩它们,源文件会消失,区别tar

参数 功能
-c --stdout 将压缩数据输出到标准输出,保留原文件,不会进行压缩
-d --decompress 解压缩文件
-f --force 强制压缩文件,覆盖已有压缩文件
-r --recursive 递归地压缩目录及其内容
-t --test 测试压缩文件是否损坏
-v --verbose 显示压缩进度信息
-h --help 显示帮助信息
gzip sudanan baijuyu  加压
结果:sudanan.gz baijuyu.gz

gzip -d baijuyi.gz luyou.gz 解压
结果:sudanan baijuyu

zip压缩zip文件(源文件还在)

参数 功能,
-r 递归地将一个目录及其所有子目录和文件压缩到ZIP文件中
-q 在压缩文件时启用静默模式,即不显示压缩过程的详细信息
-d 从现有的ZIP文件中删除指定的文件或目录,zip -d my.zip luyou,将luyou从my.zip中删除
-u 用于更新现有的ZIP文件,将新的文件或修改后的文件添加到ZIP存档中
-f 用于刷新(更新)现有ZIP文件中的指定文件。
-m 用于移动(归档)文件到一个ZIP压缩文件中,并在移动后将源文件删除。
-e 用于对ZIP压缩文件进行加密。
-z 为压缩文件添加注释
多文件打包压缩
zip my.zip baijuyi luyou

unzip解压缩zip文件

参数 功能
-d 用于指定解压缩后的目录
-l 列出压缩文件中的文件列表,而不进行实际的解压缩操作
-q 不显示解压缩过程
-o 强制已存在的文件且不会询问
-z 仅显示压缩文件中的注释说明,并不对压缩文件解压缩
[root@VM-12-9-opencloudos shiren]# unzip -d /d1 myup.zip 
Archive:  myup.zip
  inflating: /d1/baijuyi             
 extracting: /d1/luyou               
[root@VM-12-9-opencloudos shiren]# ls /d1
baijuyi  d2  luyou

more查看文件

Enter 向下n行,需要定义。默认为1行
Ctrl+F 向下滚动一屏,同f
空格键 向下滚动一屏
Ctrl+B 返回上一屏 ,同b
= 输出当前行的行号
:f 输出文件名和当前行的行号
V 调用vi编辑器
!命令 调用Shell,并执行命令
q 退出more
/字符串 ,查询

参数 功能
-num 一次显示的行数
-d 提示使用者,在画面下方显示 [Press space to continue, 'q' to quit.] ,如果使用者按错键,则会显示 [Press 'h' for instructions.] 而不是 '哔' 声
-l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能
-f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上)
-p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容
-c 跟 -p 相似,不同的是先显示内容再清除其他旧资料
-s 当遇到有连续两行以上的空白行,就代换为一行的空白行
-u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同)
+/pattern 在每个文档显示前搜寻该字串(pattern),然后从该字串之后开始显示
+num 从第 num 行开始显示

less查看文件 (ls -N file)

与more类似,但是更强大,能方向上下浏览,还能显示行号

参数 功能
-b 强制打開并查看二进制文件
-c 清屏后再显示每一页
-d 忽略键盘输入,直接显示文件内容
-e 当文件显示结束后,自动离开
-f 强迫打开特殊文件,例如外围设备接口
-g 只标志最后搜索的关键词
-i 忽略搜索时的大小写
-j 对齐左右两边文本
-J 对齐左右两边文本,并断词
-k 设置显示关心行的间距
-K 不断字,根据窗口的宽度调整换行
-L 显示类似冒号的行号
-m 显示类似百分比的进度条
-M 显示运行时间统计数据
-N 显示每行的行号
-o <文件名> 将内容输出到指定文件
-O <文件名> 将内容输出到指定文件,不显示在屏幕上
-p <字符串> 设置提示字符串
-P <字符串> 设置提示字符串,且在末行显示
-q 不加载潜在危险的外围设备文件
-Q 不加载潜在危险的外围设备文件,且不显示警告
-r 原始显示控制字符,不进行处理
-s 连续空行显示为一行
-S 截断而不是自动换行
-t <目标> 显示目标内容而不是整个文件
-T <标签> 通过指定标签显示目标内容
-u 忽略下划线的特殊含义
-V 显示版本信息
-w 禁止换行显示
-x <数字> 将"制表符"设定为指定的数字空格
-X 不需要向右滚动,只显示文本
-y <数字> 将换行的点设定为指定的数字空格
-[z]<数字> 将屏幕长度设定为指定的数字行
-~ 不显示尾部的波浪符 ‘~’
+命令 执行指定的命令

head用于显示文件的开头部分

参数 功能
-q 隐藏文件名
-v 显示文件名
-c<数目> 显示的字节数。
-n<行数> 显示的行数。
[root@VM-12-9-opencloudos etc]# head -vn 2 redis.conf lftp.conf 
==> redis.conf <==
# Redis configuration file example.
#

==> lftp.conf <==
## some useful aliases
alias dir ls

tail用于显示文件的结尾部分

参数 功能
-f 循环读取
-q 不显示处理信息
-v 显示详细的处理信息,与head一致
-c<数目> 显示的字节数
-n<行数> 显示文件的尾部 n 行内容
--pid=PID 与-f合用,表示在进程ID,PID死掉之后结束
-q --quiet, --silent 从不输出给出文件名的首部
-s --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒

netstat 显示网络状态 netstat -anp

参数 功能
-a或--all 显示所有连线中的Socket。
-A<网络类型>或--<网络类型> 列出该网络类型连线中的相关地址。
-c或--continuous 持续列出网络状态。
-C或--cache 显示路由器配置的快取信息。
-e或--extend 显示网络其他相关信息。
-F或--fib 显示路由缓存。
-g或--groups 显示多重广播功能群组组员名单。
-h或--help 在线帮助。
-i或--interfaces 显示网络界面信息表单。
-l或--listening 显示监控中的服务器的Socket。
-M或--masquerade 显示伪装的网络连线。
-n或--numeric 直接使用IP地址,而不通过域名服务器。
-N或--netlink或--symbolic 显示网络硬件外围设备的符号连接名称。
-o或--timers 显示计时器。
-p或--programs 显示正在使用Socket的程序识别码和程序名称。
-r或--route 显示Routing Table。
-s或--statistics 显示网络工作信息统计表。
-t或--tcp 显示TCP传输协议的连线状况。
-u或--udp 显示UDP传输协议的连线状况。
-v或--verbose 显示指令执行过程。
-V或--version 显示版本信息。
-w或--raw 显示RAW传输协议的连线状况。
-x或--unix 此参数的效果和指定"-A unix"参数相同。
--ip或--inet 此参数的效果和指定"-A inet"参数相同。

scp远程拷贝: scp [-r] file_source file_target

本地拷贝到远程(文件夹递归加 -r) 从远程复制到本地,只要将从本地复制到远程的命令的后2个参数调换顺序即可

本地复制到远程

scp local_file remote_username@remote_ip:remote_folder 
或者 
scp local_file remote_username@remote_ip:remote_file 
或者 
scp local_file remote_ip:remote_folder 
或者 
scp local_file remote_ip:remote_file 

第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;

远程复制到本地

scp root@www.runoob.com:/home/root/others/music /home/space/music/1.mp3 
scp -r www.runoob.com:/home/root/others/ /home/space/music/

diff

top用于实时显示系统中运行的进程活动情况

参数 功能
-d <秒数> 设置刷新间隔时间,单位为秒。默认为3秒。
-n <次数> 设置刷新次数。当指定次数达到后,top会自动退出。
-b 以批处理模式运行,适用于将top输出保存到文件中。
-u <用户名> 显示指定用户的进程信息。
-p <进程ID> 显示指定进程ID的详细信息。
-H 显示线程视图,展示各个进程的线程信息。
-c 显示完整的命令行信息,包括命令行参数。
-M 切换内存单位,以MB为单位显示内存使用情况。
-k 切换内存单位,以KB为单位显示内存使用情况。
-s <字段> 按指定字段对进程进行排序,如-s %CPU按CPU利用率排序。
####关于防火墙端口

systemctl enable[disable,is-enabled] firewalld #开机自动启动、禁止、检查是否开启防火墙

systemctl status[stop,start] firewalld #防火墙状态、关闭、启动

systemctl status firewalld #这也是防火墙状态

firewall-cmd --list-ports #防火墙开放端口列表

firewall-cmd --add-port=8080/tcp --permanent #开放8080端口,完成后要重载防火墙

firewall-cmd --query-port=80/tcp #查询80端口是否开启

firewall-cmd --reload #重载防火墙


####时间同步
ntpdate time.windows.com

###根据pid查看路径
ls -l /proc/[pid]

###grep命令
多个关键字 -E ,转义字符用\:grep -E '\[40\]|\[39\]' --color=auto  test.txt
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容