Linux文件、目录操作

编程

 

cd   切换目录

cd  /bin  切换到bin目录(指定目录),cd即change dir

cd  ..     切换过到当前目录的上一级目录,可以用..,也可以用../

cd  /    切换到系统根目录

cd  ~   切换到当前用户的根目录,比如我的用户名是chy => /home/chy

cd  -    切换到上一个目录,是上一个,不是上一级,类似于历史记录中的上一个,很多终端的-都表示上一个

Linux只有一个盘符,只有一个根目录/,没有切换盘符的说法。

 

  

 

新建、删除目录

mkdir  resource    在当前目录下新建resource目录,mkdir resource/img,如果resource不存在,会报错

mkdir  -p  resource/img  如果前面的目录不存在,会自动创建

rmdir  resource  删除当前目录下的resource目录,resource目录要是空的才能被删除(空的子目录都不能有),否则会报错

rm  -r  test  递归删除test目录(如果test下面有子文件、子目录,会递归删除)

 

 

pwd  显示当前目录

 

 

显示当前目录的子文件、子文件夹

ls  不会列出隐藏的,ls即list,有2个可选参数:

  • -a   列出所有的(包括隐藏的),a即all,在linux中隐藏的文件、目录名以.开头。
  • -l  列出详细信息,是小些的L

ls  -l   显示的文件尺寸只有数值,没有单位,默认字节Byte

ll  -h   作用和ls -l相同,但文件尺寸带有单位K、M等,方便阅读。

这2种:目录的尺寸都只有数值,没有单位,/10即为K,比如28 => 2.8K

 

 

 

显示当前目录下 子孙文件夹的大小

du  不带单位,包括隐藏的

du  -h   友好显示,带单位

 

 

 


 

 

 

文件的新建、删除

touch  1.txt  在当前目录下新建文件

touch  doucument/1.txt  在当期目录下的document目录下新建文件1.txt,如果document目录不存在,会报错

rm 1.txt  删除当前目录下的1.txt

 

 

 

查看文件内容

cat  document/1.txt  一次性列出文件的所有内容

cat  -n  1.txt  使用-n可显示行号

 

 

head  -n  5  1.txt  只列出前5行

head  -5  1.txt   可简写

 

tail  -n  5  1.txt  只列出最后5行

tail  -5  1.txt   可简写

 

 

more  1.txt   一页一页地显示,浏览过程中可用的键:

  • 空格键   往下翻一页
  • Enter   显示下一行的内容
  • :f   显示当前行号、文件名(前面有冒号)
  • q   不再显示该文件内容,即quit,退出文档内容显示
  • /字符串  往下搜索指定的字符串,直接跳到匹配的页面

 

 

less  1.txt  也是一页一页地显示,但比more功能更多,浏览过程中可用的键:

  • 空格键或PageDown  往下翻一页
  • PageUp  向上翻一页
  • Enter   显示下一行的内容
  • :f   显示当前页面的详细信息,比如行号区间、字节数、字符数占比等
  • q   不再显示该文件内容,即quit,退出文档内容显示
  • /字符串   往下搜索指定的字符串,直接跳到匹配的页面
  • ?字符串   往上搜索指定的字符串,直接跳到匹配的页面

与more相比,less多了往上的功能。

 

 

 

grep  查找文件内容

grep  image  1.txt  列出1.txt中含有字符串“image”的行,并将“image”高亮显示(红色)

 

 

 

wget   从网上下载文件

wget   https://www.runoob.com/wp-content/uploads/2014/06/363003_1227493859FdXT.png   

wget即web get,会自动保存到当前目录

 

 

 


 

 

 

cp   文件|目录的复制

cp  document/1.txt  1.txt   复制,源路径、目标路径,只能复制文件,不能复制目录

cp  1.txt   2.txt  可更改目标文件名

cp  document/1.txt   ../   复制到上一层目录中

 

如果要复制目录,需加参数-r(递归复制):

cp  -r   document  test   可指定目标目录名,此处指定为test

cp  -r  document/1  test/1

 

如果存在同名的目标文件|目录,默认直接覆盖,可使用-i指定存在同名目标文件|目录时要先询问是否覆盖:

cp  -i  document/1.txt  1.txt

Y|y是覆盖,N|n是不覆盖

 

 

 

mv  文件|目录的剪切

mv  document/1.txt   2.txt   可指定目标文件名

mv  document/1.txt  1  如果目标是目录,会剪切到该目录下

mv  1.txt  2.txt  如果都是文件|目录,且都在同一目录下,即重命名,将1.txt重命名为2.txt

mv  1  2   将目录1重命名为2

 

剪切目录时会递归剪切所有的子文件、子目录,不需要加参数。

 

如果存在同名的目标文件|目录,默认直接覆盖,可用-i指定先询问:

mv -i  document/1.txt  1.txt  存在相同的目标文件|目录时,先询问是否覆盖

 

 

 

tar   文件|目录的打包|解开

tar  -cvf  1.tar  1.txt  将1.txt打包为1.tar,

tar  -cvf  document.tar  document  打包目录

tar  -zcvf  document.tar.gz  document  打包并压缩

tar  -xvf  document.tar.gz  解开

 

-c是创建新的tar文件,-v是显示运行过程的信息,-f是指定文件名

-z压缩,-x解开

参数可以合并写,比如 tar  -c  -v  -f 可以写成 tar  -cvf

 

以上是 Linux文件、目录操作 的全部内容, 来源链接: utcz.com/z/513667.html

回到顶部