linux常用命令

2020-07-08 00:00:00 命令 文件 目录 权限 显示

【cd命令】 ------------ cd 目录名 意为切换目录

常用例子:cd ~ 进入家目录

cd .. 返回上层目录

cd - 进入上一次工作路径

cd / 进入主要目录

【pwd命令】 ------------- 查看当前工作目录路径

常用例子:pwd 查看当前路径

pwd - P 查看链接文件的实际路径

【ls命令】 ------------- 查看文件夹包含的文件、查看文件权限、目录信息等

常用例子:ls - l 列出文件的详细信息 比如 文件名、权限、文件大小、所有者等

ls -a 列出目录的所有文件

ls - t 以文件修改时间排序

ls - S 以文件大小排序

【mkdir命令】 ------------- 创建文件夹

常用例子:mkdir file 在当前工作目录下创建名为file的文件夹

mkdir -m 对新建目录设置存取权限,也可以用chmod命令设置

mkdir -p tmp/test/file 在tmp目录下创建路径为test/file的目录,若不存在,则创建

【rm命令】 ---------------- 删除一个目录中的一个或多个文件或目录

常用例子:rm -r 加上-r目录,就会删除目录

rm -rf test 删除test目录及其子目录中所有的目录文件

rm -i *.log 删除任何.log文件,删除前逐一询问确认

rm -- -f* 删除以-f开头的文件

【rmdir命令】 --------------- 从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对其父目录的写权限

注意:不能删除非空目录

常用命令:rmdir -p parent/child/child1 当parent子目录被删除后使它也成为了空目录的话,则顺便一并删除

【mv命令】 ----------------- 移动文件或修改文件名

常用命令:mv test1.log test2.log 将文件test1.log重命名为test2.log

mv log1.txt log2.txt /test 将这两个文件移动到test目录中

mv -i log1.txt log2.txt 将文件名log1改名为log2;如果log2已存在,则询问是否覆盖

mv * ../ 移动当前文件夹下的所有文件到上一级目录

【cp命令】 ------------------ 将源文件复制到目标文件,或将多个源文件复制到目标目录

注意:如果目标文件已存在会提示是否覆盖,而在shell脚本中,如果不加-i参数,则不会提示,而是直接覆盖

常用命令:cp -ai a.txt test 复制a.txt到test目录下,保持原文件时间,如果原文件存在,提示是否覆盖

cp -s a.txt link_a.txt 为a.txt建立一个链接(快捷方式)

【cat命令】 ----------------- 三个功能。一次显示整个文件;只能创建新文件,不能编辑已有文件cat >filename;能将几个文件合并为一个文件 cat file1 file2 >file

常用命令:cat -b test.log test2.log file.log 将前两个文件的内容加上行号(空白行不加)后,内容附加到file.log文件中

cat -n test.log file.log 把test.log文件的内容加上行号后输入到file.log文件里

cat log.txt 将文件里的内容反向显示出来

【more命令】 ----------------- 类似于cat more会以一页一页的显示方便使用者逐页阅读。基本的指令就是:按下大空格键就往下一页显示,按b键会往回一页显示。

命令参数:more +n test.txt 从第n行开始显示

more -n test.txt 定义屏幕大小为n行,意思是每页显示n行

more -c test.txt 从顶部清屏,然后显示

more -d yest.txt 提示按空格键继续,按Q退出,禁用响铃功能

more +n/pattern 在字串pattern前两行之后开始显示

more -s 把连续的多个空行显示为一行

more -u 把文件内容中的下划线去掉

常用操作命令:enter 向下n行,默认为1行

空格键/ctrl + f 向下滚动一屏

ctrl + b 向上返回一屏

= 输出当前行的行号

:f 输出文件名和当前的行号

V 调用vi编辑器

q 退出more

s -l | more -5 在所列出文件目录详细信息,借助管道使每次显示5行

【less命令】 ------------- less可以随意浏览文件,而more仅能向前移动,而不能向后移动

命令参数:- N 显示每行的行号

- s 显示连续空行为一行

- i 忽略搜索时的大小写

b 向后翻一页

d 向后翻半页

h 显示帮助界面

Q 退出less命令

u 向前滚动半页

y 向前滚动一行

空格键 滚动一行

回车键 滚动一行

常用命令:less 1.log 2.log 查看多个文件

ps -aux | less -N ps查看进程信息,并通过less分页显示

【head命令】 ---------------- 默认head命令打印其相应文件的开头10行

常用命令:head 1.log -n 20 显示1.log文件中的前20行

head -c 20 1.log 显示1.log文件前20字节

head -n -10 1.log 显示1.log文件内容的后10行

【tail命令】 ------------------- 常用于查看日志文件

常用命令:tail -f 循环读取 常用于查看递增的日志文件

tail -n 10 1.log 从后向前读10行文件内容

【which命令】 ------------------ 搜索 查找 在linux中查找某个文件,但不知道放哪里了,可以使用which命令

常用命令:which ls 查看ls命令是否存在

which which 查看which

which cd 查看cd

查看当前path配置:echo $PATH ;或使用env查看所有环境变量及对应值

【find命令】 ------------------ 用于在文件树中查找文件,并做出相应处理

常用命令:find -atime -2 查找48小时内修改过的文件

find ./-name '*.log' 当前目录查找以.log结尾的文件

find /opt -perm 777 查找/opt目录下 权限为777的文件

find -size + 1000c 查找大于1K的文件

find -size 1000c 查找等于1000字符的文件

【chmod命令】 --------------- 用于改变linux系统文件或目录的访问权限

权限范围: r 读权限 数字4表示

w 写权限 数字2表示

x 执行权限 数字1表示

- 删除权限 数字0表示

s 特殊权限

常用命令:chmod a+x t.log 增加文件 t.log所有用户可执行权限

chmod u=r t.log -c 撤销原来所有的权限,然后使拥有者具有可读权限,并输出处理信息

chmod 751 t.log

chmod u+r,g+r,o+r -R text/-c 将test目录及其子目录所有文件添加可读权限

【tar命令】 --------------- 压缩和解压文件

常用命令:tar zcvf filename.tar.gz 压缩

tar zxvf filename.tar.gz 解压

tar jcvf filename.tar.gz 压缩

tar jxvf filename.tar.bz2 解压

【chown命令】 ----------------- 将指定文件的拥有者改为指定的用户或组

常用命令:chown -c mail:mail 1.log 改变拥有者和群组,并显示改变信息

chown -c:mail t.log 改变文件群组

chown -cR mail t.log 改变文件夹及文件目录属主及属组为mail

【df命令】 --------------- 显示磁盘空间使用情况

常用参数:-a 全部文件系统列表

-h 以方便阅读的方式显示信息

-i 显示inode信息

-k 区块为1024字节

-l 只显示本地磁盘

-T 列出文件系统类型

常用命令:df -l 显示磁盘使用情况

df -haT 以易读方式列出所有文件系统及其类型

【du命令】----------------- 查看使用空间 不同的是 du是对文件和目录磁盘使用的空间的查看

常用命令:du -ah scf/ 以易读方式显示文件夹内及子文件夹大小

du -a test 显示test目录下所有的目录及文件

du -h scf/ 以易读方式显示文件夹内子文件夹大小

du -hc test/ scf/ 显示几个文件或目录各自占用磁盘空间的大小,还统计他们的总和

du -hc --max-depth=1 scf/ 输出当前目录下各个子目录所使用的的空间

【cal命令】--------------------- 可以用户显示公历日历

常用参数:cal 9 2019 显示指定的年月日期

cal -y 2019 显示2019年每个月日历

cal -3m 将星期一作为列,显示前中后三月

【date命令】 -------------------- 显示或设定系统的日期与时间

常用参数:date +%Y%m%d --date="+1 day" 显示下一天的日期

date -d "nov 22" 几年的11月22日是星期三

date -d '2 weeks' 2周后的日期

date -d 'next monday' 下周一的日期

date -d tomorrow +%Y%m%d 明天的日期

date -d yesterday +%Y%m%d 昨天的日期

date -d last-month +%Y%m 上个月是几月

date -d next-month + %Y%m 下个月是几月

【grep命令】 ------------- 强大的文本搜索命令

常用命令:ps -ef | grep svn 查找指定进程

ps -ef | grep savn -c 查找指定进程的个数

cat test.txt | grep -f key.log 从文件中递归查找以grep开头的行,并只列出文件

grep -E 'ed | at' test.txt 显示包含ed或者at字符的内容

【wc命令】 ----------------- 统计指定的文件中字节数、字数、行数、并将统计结果输出

常用命令:wc test.txt 查找文件额行数、单词数、字节数、文件名

cat test.txt | wc -l 统计输出结果的行数

相关文章