了解 Linux 系统基本的文件管理命令可以帮助我们更好的使用 Linux 系统,以下介绍几个常用的文件管理命令

1、pwd

pwd 是 Print Working Directory 的简写,用于显示当前工作目录

user@ubuntu:/$ pwd
/home/user

2、ls

ls 是 List 的简写,用于列出目录内容,常用的参数列举如下:

  • -a:(All)显示所有文件,包括隐藏文件
  • -l:(Long Format)显示详细信息
  • -t:(Time)按修改时间排序
  • -s:(Size)按文件大小排序
  • -F:显示时加上类型指示符
user@ubuntu:~$ ls -l
total 8
drwxrwxr-x 2 user user 4096 Sep 12 16:05 test
-rw-rw-r-- 1 user user 12 Sep 12 16:00 test.txt

加上 -l 参数后,每一个文件或者目录显示的内容包含 7 个字段,各个字段的具体含义如下:

  • 第一个字段:文件权限,这个在 下一篇文章 中将会详细讲解,有兴趣的朋友不妨先戳链接浏览一下
  • 第二个字段:文件数目,若是文件则为 1,若是目录则为目录中包含的所有子目录的数目
  • 第三个字段:文件所有者
  • 第四个字段:文件所属组
  • 第五个字段:文件大小,以 Byte 为单位,目录大多以 4096 表示
  • 第六个字段:建立日期,格式为 Month Day HH:MM
  • 第七个字段:文件名称

3、cd

cd 是 Change Directory 的简写,该命令用于切换目录,几个常用目录的切换命令如下:

  • cd ~ / cd:切换到当前登陆用户的主目录
  • cd /:切换到根目录
  • cd ..:切换到上一级目录
user@ubuntu:~$ cd /
user@ubuntu:/$ pwd
/

4、cp

cp 是 Copy 的简写,该命令用于复制文件与目录

命令语法

复制文件:cp 原文件 新文件
复制目录:cp -ax 原目录 新目录

参数含义:-a 代表复制所有目录,包含子目录;-x 指定复制后文件格式与目标扇区文件系统相同

5、mv

mv 是 Move 的简写,该命令用于移动文件与目录

命令语法

移动文件:mv 原文件 新文件
复制目录:mv 原目录 新目录

技巧:因为在 Linux 中没有专门的重命名命令,所以 mv 命令还可以用来 重命名文件

user@ubuntu:~$ ls
test.txt
user@ubuntu:~$ mv ./test.txt ./test_file.txt
user@ubuntu:~$ ls
test_file.txt

6、rm

rm 是 Remove 的简写,该命令用于删除文件与目录

命令语法

删除文件:rm 文件名
删除目录:rm -rf 目录名

参数含义:-r 代表递归(Recursive),即删除目录及目录下的所有子目录;-f 代表强制删除(Force)

注意:在使用这个命令时一定要格外小心,因为在 Linux 中 删除等于永久移除

建议:在使用 rm 命令前先使用 ls 命令进行测试,确认正确后调用上一条命令并将 ls 改成 rm

7、mkdir

mkdir 是 Make Directory 的简写,该命令用于创建新目录

命令语法

mkdir 目录名

8、rmdir

rmdir 是 Remove Directory 的简写,该命令用于删除目录

命令语法

rmdir 目录名

注意:执行此命令前需确保目录中没有任何文件,若要强制删除目录和目录中所有文件,可加上参数 -rf

9、ln

ln 是 Link 的简写,该命令用于建立链接文件

命令语法

ln -s 原文件 新文件

参数含义

-s 代表创建符号链接(软链接),即原文件和新文件实质上指向同一份文件,新文件只是用指针指向原文件

无 -s 代表创建硬链接,即新文件和原文件是各不相干的,新文件只是原文件的一份副本

10、cat

cat 是 Concatenate 的简写,用于查看文件内容,以及由键盘读取数据

  • 查看文件内容:cat 文件名
  • 由键盘读取数据并保存在文件中:cat > 文件名

注意:由键盘读取数据时,按 Enter 确认输入,按 Ctrl+C 结束输入,当保存在文件中时 默认覆盖原文件内容

技巧:cat 命令还可以用于合并文件内容

user@ubuntu:~$ cat a.txt
Hello
user@ubuntu:~$ cat b.txt
Hi
user@ubuntu:~$ cat ./a.txt ./b.txt > ./c.txt
user@ubuntu:~$ cat c.txt
Hello
Hi

11、more

more 命令用于一页一页显示文件内容,对于长文件来说比较适合,常用参数列举如下:

  • -数字:显示从第 数字 行起的内容
  • -文字:显示从 文字 开始的内容

注意:在 more 阅读模式下,按 Space 跳转到下一页,按 Enter 滚动到下一行

12、less

less 命令用于交互式显示文件内容,对于长文件来说比较适合

注意:在 less 阅读模式下,可以使用 方向键 控制屏幕滚动

13、head / tail

head 命令用于显示前几行的内容,例如 head -5 file.txt 显示 file .txt 文件前 5 行内容

类似的,tail 命令用于显示后几行的内容,例如 tail -5 file.txt 显示 file .txt 文件后 5 行内容

【Linux学习笔记相关文章】

Linux学习笔记(二) 文件管理的更多相关文章

  1. linux 学习笔记二

    笔记二 命令行格式 command [-options] parameter1 parameter2 ... 命令 选项 参数(1) 参数(2) options 和 参数 不是必须的 帮助命令 man ...

  2. linux学习笔记二:三种网络配置

    本文引用自:https://www.linuxidc.com/Linux/2017-05/144370.htm [linux公社] VMware为我们提供了三种网络工作模式,它们分别是:Bridged ...

  3. linux学习笔记二-----文件权限管理

    一.分析文件权限(ln -s 文件名 快捷方式名 用来创建文件的快捷方式,下方ll查看信息时会在第一个字符处显示l) [hjp@bogon ~]$ ll total 4 drwxrwxr-x. 2 h ...

  4. linux学习笔记二

    进程(process)是程序实体运行的过程,是系统进行资源分配和调度的独立单位,或者说是一个程序在处理机上的一次执行活动. 区分一下进程和程序 1.0 程序是一个静态指令的集合:而进程是一个程序的动态 ...

  5. Linux学习笔记二:Ubuntu安装SSH(Secure Shell)服务

    Ubuntu默认是没有安装SSH(Secure Shell)服务,如果想要通过ssh链接到Ubuntu,我们需要手动安装ssh-server. SSH分客户端ssh-client,服务端ssh-ser ...

  6. Linux学习笔记二:tar命令使用

    tar命令详解 tar命令详解 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的 ...

  7. 【linux学习笔记二】常见目录的作用

  8. Linux学习笔记(一) 文件系统

    对于每一个 Linux 学习者来说,了解 Linux 文件系统的结构是十分有必要的 因为在 Linux 中一切皆文件,可以说只有深入了解 Linux 的文件系统,才会对 Linux 有更深刻的理解 L ...

  9. Linux学习笔记(四) vi编辑器

    一.vi 编辑器 vi 编辑器 (Visual Interface) 是所有 Unix 及 Linux 系统下标准的编辑器,相当于 Windows 系统中的记事本 它有三种模式,分别是: Comman ...

随机推荐

  1. luogu 4429 染色

    bjoi 2018 染色 推了个错误结论得了60分? 题目大意: 一个无重边和自环的无向图,并且对每个点分别给了一个大小为2的颜色集合,只能从这个集合中选一种颜色给这个点染色 求一个染色方案使得没有两 ...

  2. 【152】C# 操作 Excel 杂记

    前面写了一篇博文是关于 C# 操作 Excel 的文章,但是里面有些中规中矩,搞的我不知道怎么写了,所以另开一帖.. 注意:基本应用如下所示! //首先是引用 using Excel = Micros ...

  3. bzoj 1618: [Usaco2008 Nov]Buying Hay 购买干草【背包】

    好像是完全背包吧分不清了-- 好像是把数组二维压一维的时候,01背包倒序,完全背包正序 ```cpp include include using namespace std; const int N= ...

  4. [App Store Connect帮助]六、测试 Beta 版本(2)输入测试信息以供外部测试

    如果您向外部测试员分发您的 App,您需要输入关于您 App 的额外 TestFlight 测试信息以供“Beta 版 App 审核”.您可以在添加 App 至您的帐户时,或在您邀请外部测试员时输入此 ...

  5. 基于.Net Core的API框架的搭建(3)

    5.加入缓存支持 我们希望为项目增加缓存支持,我们选择Redis做为缓存数据库. 首先,我们在Services目录增加一个缓存接口类ICacheService: using System; using ...

  6. Java多线程(二) synchronized 针对对象进行锁定

    http://www.cnblogs.com/QQParadise/articles/5059824.html 1.方法内的变量为线程安全的 2.实例变量非线程安全的 public class Has ...

  7. 51nod 1018 排序

    1018 排序 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 给出N个整数,对着N个整数进行排序 Input 第1行:整数的数量N(1 <= N  ...

  8. lower_bound和upper_bound函数

    lower_bound(ForwardIter first,ForwardIter last,const_TP & val) upper_bound(ForwardIter first,For ...

  9. ch1 About thinking skills

    When confronted with a problem , we think about it. The issue, of course, is that our efforts may be ...

  10. 87. [NOIP2000] 乘积最大

    ★☆   输入文件:cjzd.in   输出文件:cjzd.out   简单对比 时间限制:1 s   内存限制:128 MB 问题描述 今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国 ...