Linux 文件和目录的常见操作

2023-11-29  本文已影响0人  暴躁程序员

一、目录操作

  1. 切换目录(change directory 缩写)
cd ../       返回上一级
cd ../../    返回上两级:
cd -         返回上一次所在目录
cd dir1/     进入下一级的dir1目录
cd D:dir1/   进入D盘下的dir1某目录
  1. 新增目录(make directory 缩写)
mkdir dir1 dir2 dir3          新建文件夹(可建同级多个目录)
mkdir existdir/newdir         在已经存在的子目录下新建目录
mkdir -p dir1/dir2/dir3       新建目录树
mkdir -m 777 dir1             新建目录并赋予权限(这个权限是通过计算得到)
  1. 删除目录(remove directory 缩写)
rmdir dir1                    删除空目录
rm -rf dir1 dir2              删除目录和目录内的内容(可同时删除多个同级目录) 
  1. 目录拷贝、目录剪切、目录重命名
cp -a sourcedir xx/xxx/copydir      目录拷贝,拷贝 sourcedir 目录,粘贴到 xx/xxx/ 目录下,并重命名成 copydir
mv sourcedir xx/xxx/newdir          目录剪切,剪切 sourcedir 目录,粘贴到 xx/xxx/ 目录下,并重命名成 newdir
mv sourcedir newdir                 目录剪切,如果 newdir 目录存在,则会将 sourcedir 移动到 newdir中
mv sourcedir newdir                 目录重命名,如果 newdir 目录不存在,则会将 sourcedir 重命名成 newdir
  1. 查看目录
ls                                 查看目录下的非隐藏文件
ls -a                              查看所有隐藏文件
ls -l                              查看文件的详细信息,包括:文件权限和创建时间等
find -name fileordir               在当前工作路径下开始查找目录,成功后返回路径
find /home/user1 -name \*.bin      在目录 '/home/user1' 中搜索带有'.bin' 结尾的目录 

二、文件操作

  1. 新增文件
touch file1.js file2.js       新建文件,可批量,如果文件存在,那么什么都不会发生
touch file{0001..2000}.txt    连续创建2000个文件
>                             新建文件,不可批量,直接覆盖原文件(可用于清空文件内容)
>>                            新建文件,不可批量,追加在原文件末尾,不会覆盖原文件的内容
  1. 删除文件
rm -f 文件名                  删除文件
> 文件名                      清空文件内容                             
  1. 编辑文件内容
// 1. 执行 vi 或者 vim 命令编辑文件内容
1. vi file1.js                进入文件
2. i                          进入insert模式,开始编辑文件
3. Esc                        退出insert模式                     
4. :wq                        保存并关闭编辑内容(输入法必须是英文状态)
5. :q                         只是浏览内容,没有修改,可使用此命令退出(输入法必须是英文状态)   

// 2. 命令行修改文件内容
1. 清空文件内容,并添加        echo "hello world" > 文件名     
2. 不清空文件内容,只追加      echo "hello world" >> 文件名     

  1. 文件拷贝、文件剪切、文件重命名
cp -a sourcefile xx/xxx/copyfile      文件拷贝,拷贝 sourcefile 文件,粘贴到 xx/xxx/ 文件下,并重命名成 copyfile
mv sourcefile xx/xxx/newfile          文件剪切,剪切 sourcefile 文件,粘贴到 xx/xxx/ 文件下,并重命名成 newfile
mv sourcefile newfile                 文件重命名,如果 newfile 文件不存在,则会将 sourcefile 重命名成 newfile
  1. 查看文件
// 1. 查看文件所在目录的位置
find -name fileordir               在当前工作路径下开始查找文件或者目录,成功后返回路径
find /home/user1 -name \*.bin      在目录 '/home/user1' 中搜索带有'.bin' 结尾的文件 


// 2. 查看文件的内容
cat file1                       从第一个字节开始正向查看文件的内容 
tac file1                       从最后一行开始反向查看一个文件的内容(将文件倒过来) 
more file1                      查看一个长文件的内容(慎用) ,q 退出 more,:f显示当前文件的文件名和行号,回车键向下移动一行,空格键向下移动一页

less file1                      类似于 'more' 命令,但是它允许在文件中和正向操作一样的反向操作(慎用) 
head -2 file1                   查看一个文件的前两行 
tail -2 file1                   查看一个文件的最后两行 
tail -f file1                   实时查看文件夹中的内容 

// 3. 检索文件的内容
grep content file1              查找到所有 包含 关键字的行
grep –i content file1           查找到所有 包含 关键字的行(查找时不区分大小写)
grep –v content file1           查找到所有 不包含 关键字的行

三、本地电脑和服务器的目录文件互传(命令行)

打开本地电脑终端

  1. 将本地电脑的文件或者目录拷贝到服务器上
// xxx.xxx.xxx.xxx 是服务器的公网IP
scp C:\Users\Administrator\Desktop\test\index.js root@xxx.xxx.xxx.xxx:/root   // 拷贝文件
scp -r C:\Users\Administrator\Desktop\test\ root@xxx.xxx.xxx.xxx:/root  // 拷贝目录 
  1. 将服务器的文件或者目录拷贝到本地电脑上
scp root@4xxx.xxx.xxx.xxx:/root/index.js C:\Users\Administrator\Desktop\ // 拷贝文件
scp -r root@xxx.xxx.xxx.xxx:/root/ C:\Users\Administrator\Desktop\ // 拷贝目录 
上一篇 下一篇

猜你喜欢

热点阅读