Linux命令2——文件操作命令

本文详细介绍了Linux系统中常用的基础命令,包括ls用于查看目录内容,cd用于切换目录,chmod用于改变文件权限,mv和cp用于移动和复制文件,rm用于删除文件,mkdir和rmdir创建和删除目录,touch更新文件时间戳,cat、less、head和tail显示文件内容,find搜索文件,more分屏查看文件。这些命令是Linux操作的基本工具。
摘要由CSDN通过智能技术生成

1.1ls 查看当前目录下的文件列表,仅列出当前目录可见文件。

-l:显示详细信息;
-a:显示隐藏文件;
-h:人性化显示文件大小;
-t:按时间排序;
-r:倒序排序;
-S:按文件大小排序;
-R:递归显示目录及子目录内容。

1.1.1 ls   -a 

        显示当前目录下包括隐藏文件的所有文件列表。

1.1.2 ls   -l

         输出长格式列表,每个文件输出一行。

1.1.3 ls   -t

        按修改文件排序,最近修改的文件显示在最上面。

1.1.4 ls   -R  

        显示递归文件        

2.1cd  切换工作目录

2.1.1 cd /

        进入用户的根目录

2.1.2 cd ..

        返回上级目录

2.1.3 cd ../..

        返回上两级目录

2.1.4 cd {path}

        进入到指定的目录,相对路径和绝对路径都支持 

3.1 chmod 更改文件或目录的访问权限

3.1.1 访问权限说明,通过ls -l查看

        -rw-r--r-x 共10位符号控制,分成1+3+3+3四部分形式 ①- ②rw- ③r--  ④r--

        ①是第1位符号,如果是-表示是普通文件,如果是d则表示目录。

        ②2-4位,表示当前用户的权限,用u符号

        ③5-7位,表示当前组的权限,用g符号

        ④8-10位,表示其他用户的权限,用o符号。

        ⑤r符号代表读权限以及八进制数4。

        ⑥w符号代表写权限以及八进制数2

        ⑦x符号代表执行权限以及八进制数1。

        ⑧+/- 增加或者删除相应的权限。

3.1.2 添加组用户的写权限

        chmod g+w ./test.log      

3.1.3 删除其他用户的所有权限(权限数为0)

        chmod o= ./test.log

3.1.4 删除所有用户的写权限

        chmod a-w ./test.log

3.1.5 分别配置权限,当前用户--所有   组--读写  其他用户--读

        chmod u=rwx, g=rw, o=r ./test.log

3.1.6 用八进制数快速分别配置权限,数字对应如上的权限配置

        chmod 764 ./test.log

4.1  mv 移动或重命名指定的文件或目录

-f:强制覆盖已存在的文件;
-i:交互式移动,提示用户确认;
-v:显示移动过程。

4.1.1  移动(多个)文件,移动目录同理

        mv file_2.txt file_3.txt file_4.txt /home/office/

        mv *.txt /home/office/         

4.1.2  重命名文件或目录

        mv file_1.txt file_2.txt         # 将文件file_1.txt改名为file_2.txt 

5.1  cp 复制指定的文件或目录

-r:递归复制目录及其内容;
-f:强制覆盖已存在的文件;
-i:交互式复制,提示用户确认;
-p:保留原文件权限等属性;
-v:显示复制过程。

5.1.1  复制文件到另外一个目录并改名

        cp file.txt /home/user/Documents/newfile.txt

5.1.2  目录递归赋值

        cp -r /usr/men /usr/zh

5.1.3  相对路径复制文件到当前目录下

        cp ../mary/homework/assign . 

6.1  rm 删除指定的文件或目录,删目录则必带上-r/-R参数

-r:递归删除目录及其内容;
-f:强制删除文件或目录;
-i:交互式删除,提示用户确认;
-v:显示删除过程。

6.1.1 批量删除 icons 文件夹中的子文件夹中的 data 文件夹

        rm -rf icons/**/data

6.1.2  删除当前项目下 .html 结尾的文件 

        rm -rf *.html

7.1  mkdir/rmdir 创建/删除(空)目录

rmdir  : -p或--parents:删除指定目录后,若该目录的上层目录已变成空目录,则一并删除。

mkdir : -p:创建多级目录;
            -m:设置权限;
            -v:显示创建过程。

7.1.1 删除空目录

        rmdir www

7.1.2 由下向上递归删除,若 Test 删除后,www 目录成为空目录,则 www 亦予删除。

        rmdir -p www/Test                  #等价于 rmdir www/Test 和 rmdir www 

7.1.3 在当前目录下创建目录

        mkdir new_directory

7.1.4  创建多级目录并设置权限,当前用户有所有权,没有-p则/usr/meng路径要存在

        mkdir -p -m 700 /usr/meng/test

8.1  touch 更新文件或目录的时间戳

8.1.1 创建文件或更新时间戳(当文件已存在时)

        touch new_file.txt

8.1.2 批量创建文件

        touch file{1..5}.txt  

9.1  cat 可显示多个文件内容,显示不可见字符

-n:显示行号;
-b:只对非空行显示行号,从1开始,覆盖"-n"选项;
-E:在每行末尾添加$符号。

9.1.1  合并显示多个文件并打印到终端上

        cat ./1.log ./2.log ./3.log

9.1.2 显示文件中的非打印字符、tab、换行符

        cat -A test.log

9.1.3  将标准输入的内容和文件内容一并显示

        echo '######' |cat - test.log

9.1.4   多个文件合并成一个文件,file1和file2的内容合并成一个新文件file3

        cat file1 file2 > file3

10.1  less 分屏上下翻,浏览文件内容(重点)

命令参数

-e:文件内容显示完毕后,自动退出;

-f:强制显示文件;

-g:不加亮显示搜索到的所有关键词,仅显示当前显示的关键字,以提高显示速度;

-l:搜索时忽略大小写的差异;

-N:每一行行首显示行号;

-s:将连续多个空行压缩成一行显示;

-S:在单行显示较长的内容,而不换行显示;

-x<数字>:将TAB字符显示为指定个数的空格字符。

/字符串:向下搜索"字符串"的功能

?字符串:向上搜索"字符串"的功能

n:继续向后搜索

N:向前搜索

b: 向后翻一页

d: 向后翻半页

u: 向前滚动半页

y: 向前滚动一行

Q: 退出less 命令

空格键: 滚动一页

回车键: 滚动一行

[pagedown]: 向下翻动一页

[pageup]: 向上翻动一页

G: 移动到最后一行

g: 移动到第一行

1.全屏导航

ctrl + F - 向前移动一屏   ctrl + B - 向后移动一屏

ctrl + D - 向前移动半屏   ctrl + U - 向后移动半屏

2.单行导航

j - 下一行

k - 上一行

3.其它导航

G - 移动到最后一行

g - 移动到第一行

q / ZZ - 退出 less 命令

10.1.1 ps查看进程信息并通过less分页显示

        ps -ef | less

10.1.2 查看命令历史使用记录并通过less分页显示

        history | less

10.1.3  浏览多个文件

        less test1.log test2.log   #输入n切换下个文件,输入p切换到上一个

10.1.4 搜索文本

        / hello

11.1  head  显示文件的前几行。默认情况下显示前10行。

-n:显示前n行;
-c:显示前n个字符;
-q:不显示文件名;

11.1.1  显示文件的前5行

        head -n 5 file.txt

11.1.2  显示文件的前100个字节

        head -c 100 file.txt

11.1.3   通过管道传递数据并显示开头部分

         cat file.txt | head

12.1  tail  屏幕上显示指定文件的末尾若干行

-c, --bytes=NUM 输出文件尾部的NUM(NUM为整数)个字节内容。

-f, --follow[={name|descript}] 显示文件最新追加的内容。“name”表示文件名的方式监视变化。

-F 与 “--follow=name --retry” 功能相同。

-n, --line=NUM 输出文件的尾部NUM(NUM位数字)行内容。

--pid=<进程号> 与“-f”选项连用,当指定的进程号的进程终止后,自动退出tail命令。

-q, --quiet, --silent 当有多个文件参数时,不输出各个文件名。

 -s, --sleep-interal=<秒数> 与“-f”选项连用,指定监视文件变化时间隔的秒数

12.1.1 显示文件file的内容,从第20行至文件末尾

        tail -n +20 file

12.1.2 显示文件file的最后10个字节

        tail -c 10 file

12.1.3 监视filename文件的尾部内容

        tail -f mail.log

13.1 find  在指定目录下查找文件

13.1.1 删除当前目录下的 package-lock.json 

        find . -name "package-lock.json" -exec rm -rf {} \;

13.1.2 查找 .html 结尾的文件并删除

        find ./docs -name "*.html" -exec rm -rf {} \;

13.1.3 删除当前目录下的 node_modules 目录 

        find . -name 'node_modules' -type d -prune -exec rm -rf '{}' +

 13.1.4 按照文件类型进行搜索

        find /path/to/search -type f

14.1 more 显示文件内容,每次显示一屏

        按 Space 键:显示文本的下一屏内容。

        按 Enter 键:只显示文本的下一行内容。

        按斜线符|:接着输入一个模式,可以在文本中寻找下一个相匹配的模式。

        按H键:显示帮助屏,该屏上有相关的帮助信息。

        按B键:显示上一屏内容。按Q键:退出more命令。

        -<数字>:指定每屏显示的行数;

        -d:显示“[press space to continue,'q' to quit.]”和“[Press 'h' for instructions]”;

        -c:不进行滚屏操作。每次刷新这个屏幕;

        -s:将多个空行压缩成一行显示;

        -u:禁止下划线;

        +<数字>:从指定数字的行开始显示。 

14.1.1 显示文件内容,但在显示前先清屏,并且在屏幕的最下方显示完成的百分比。

        more -dc file

14.1.2 每10行显示一次,而且在显示之前先清屏

        more -c -10 file

14.1.3 第 20 行开始显示 testfile 之档案内容,多行空白按一行空白处理

        more  -s  +20 testfile

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值