程序员的Linux上手手册(2) - 基础文件操作命令

ubuntu常用基础命令简介

Linux学习起来难不难?难,为什么难?因为你不熟悉!原因简单吧,就是你不熟悉。如果你熟悉了它,你就会发觉它超级简单,比Windows简单。不是说笑,真的比Windows简单。为什么他没有在人群中流行起来呢?就行因为它黑乎乎的字符界面。但现在随着窗口的发展,相信它会越来越普及的。

Linux命令和文件系统

Linux命令是我们通过黑乎乎的界面和Linux系统交互的常用方式。我通过命令来操作文件,执行程序。专业的术语还有内部命令,外部命令等。
Linux的文件系统是所有Linux操作的基础。在Linux中,一切都被抽象成了文件,设备是文件,磁盘是文件,额,目录也是文件……。要执行一个程序,运行一个文件;要修改一个配置,修改一个文件。整个操作系统的使用是围绕文件展开的。在Linux中,修改系统配置变得非常容易,编辑一个文件,重启相应服务/程序。OK收工。是不是很easy。什么注册表?什么组策略?都统统见鬼去吧。是不是很简单?

实际操作前的一些基本规则

  • 一条命令由 命令+参数 组成,在Linux系统中和一些文档中,我们为了表示的命令用法,通常会按照一定的格式标示命令和参数
命令 [可选参数]... 必选参数...

[] 包起来的部分是可选参数,...表示该位置的参数是可变的,数量不固定的。没有用[]包裹起来的参数是必须指定的项目

  • 在linux中,有几个特殊的目录,需要提前记住,他们分别是 .代表当前目录, ..代表上级目录, ~代表用户主目录,/代表根目录
  • 在命令的执行过程中,可以通过按ctrl+c终止命令的运行

文件操作

随着桌面版的流行,文件操作变得很简单了,但很多时候,我们是通过SSH远程到服务器。这个时候命令行终端就是唯一的工具了。因此掌握linux的命令行文件操作是必须的。打开你的终端,是时候开始真正的操作了。这次介绍的基础命令是服务器版本和桌面版本通用的。
下面介绍一些常用的文件操作命令。

cd 切换工作目录

命令格式:cd [目录]
命令说明:cd命令是在Linux系统中使用频率最高的命令之一。我们在使用Linux命令的时候,在某些需要输入文件路径的场合,如果路径是从当前目录开始的,则在输入路径的时候可以不输入路径中当前工作目录所在的部分。还有一些命令可以省略路径参数,而当我们省略路径参数时,通常会将当前目录作为默认路径参数,如ls
命令示例:

cd #将工作目录切换到用户主目录,cd如果省略目录参数,则 ~ 是默认参数
cd ~ #将工作目录转到用户主目录,这时我们输入ls命令将会列出用户主目录的文件内容。
cd /etc #将工作目录切换到/etc目录
cd .. #切换当前工作目录的上级目录

ls 列出文件

命令的格式:ls [选项]... [文件]...
命令说明:列出指定的文件夹/目录(友情提示,在相当长的一段时间内,你可以将文件夹和目录理解成一个意思)的文件,没错,你没有看错,这个参数是文件,而不是仅仅是目录。这个了命令的选项和文件都是可选参数。
常用可选选项:

  • -a 显示所有项目,在Linux中,没有隐藏文件的说法,但如果一个文件的文件名以“.”开头的话,就会被默认隐藏。
  • -l 使用较长的格式列出文件信息

命令示例

ls #列出当前目录的常规文件(省略选项和文件参数)  
ls -a #列出当前目录下的所有文件(省略文件参数)  
ls /etc #列出/etc下的所有文件(省略选项)  
ls -a /etc #列出/etc目录下的所有文件(选项和文件都有)  

ll 显示文件详细信息

这个命令就是 ls -l 的一个别名,和ls的命令和选项是一样的

ll -a #列出当前目录下所有文件的详细信息

mkdir 建立目录

命令格式:mkdir [选项]... 目录...
命令说明:建立一个或多个目录
常用选项:

  • -p 自动建立上级目录

命令示例

mkdir a b c #在当前目录下建立a b c三个目录
mkdir -p a/b/c # 在当前目录下建立 a/b/c目录,自动创建不存在的上级目录。

rmdir 删除指定目录

命令格式:rmdir [选项]... 目录...
命令说明:删除指定的非空目录
常用选项:

  • -p 同时删除上级目录,如果上级目录为空的话。

命令示例:

rmdir b #删除当前目录下的空目录b
rmdir -p a/b/c 删除当前目录下的 a/b/c,a/b,a,如果这些目录都为空的话。

cp 复制文件

命令格式:cp [选项]... 源 目标
命令说明:将源文件/目录复制到目标文件/目录。如果源是文件,而目标不存在,则会创建新文件,如果源是文件而目标是个目录,则会将文件复制到目标目录之下,如果源是文件夹而目标不存在,则会创建文件夹。规则有点复杂,但应该都会是你想要的结果,试试就知道了。这个命令的使用方式比较多,我们暂时掌握一种即可
常用选项

  • -r 连同源目录的子目录和文件一起递归复制

命令示例

cp /etc/apt/sources.list ~ #将/etc/apt/sources.list复制到当前用户主目录下
cp -r /etc/apt ~ #将/etc/apt及其子目录下的所有内容递归复制到当前用户主目录下

mv 移动文件

命令格式:mv [选项]... 源文件 目标文件
命令说明:将指定的文件/目录移动到目标文件/目录,源和目标的规则与cp基本一致
命令示例:

mv ~/apt/sources.list ~/sources.list.bak #将用户主目录下的apt/sources.list 移动到主目录下,并重命名为sources.list.bak
mv ~/apt/apt.conf.d ~ #将主目录下的apt/apt.conf.d移动到主目录下

rm 删除文件

命令格式:rm [选项]... [文件]...
命令说明:删除指定的文件,rm命令不会删除目录,但我们可以通过-r选项删除目录及其目录下的文件
常用选项:

  • -r 递归删除目录以及目录下的文件和子目录。
  • -i 在删除每个文件前都需要用户确认

命令示例:

rm ~/sources.list #删除用户主目录下的sources.list文件
rm -r ~/apt # 删除用户主目录下的apt目录及目录下的文件

cat 查看文件内容

命令格式:cat [选项]... [文件]...
命令说明:将指定文件输出到标准输出(通常是终端窗口)。这个命令还有一个功能,就是当我们直接输入cat而不输入文件名时,会将输入内容显示到输出中。什么个意思呢?就是你输入一行文字,回车,它马上给你把文字显示出来。这个功能配合linux的管道符>可以实现在终端创建文件的作用。
命令示例:

cat /etc/network/interfaces #显示该文件的内容
cat > ~/a.txt #这个命令会等待用户输入,输完一行回车一行,完成之后按ctrl+d,会在用户主目录下生成一个a.txt的文件,里面的内容就是我们刚刚输入的内容。

man 获取命令帮助

命令格式:man [选项...] [章节] 手册页...
命令说明:获取指定命令的相关帮助文档,这个命令是相当有用的,我们常人应该不可能记住所有的东西,哪怕是我们自己写的程序,有时候都会搞忘用法。所以这个man就是在我们不清楚一个命令怎么用的时候,给我们提供帮助。善用man,你也很快就会成为一个高手。当帮助文档打开后,按q键可以退出查看模式。通常每个命令自身也会提供帮助选项,通常的打开方式是 命令 --help
命令示例:

man ls #获取ls命令的帮助文档,按q键退出查看状态。
ls --help #获取ls的帮助信息

码字不易,求个关注,求个评论,求个转发,好与不好,留个记号!
系列其它文章:
程序员的Linux上手手册(1) - ubuntu安装
程序员的Linux上手手册(2) - 基础文件操作命令
程序员的Linux上手手册(3) - 常用工具
程序员的Linux上手手册(4) - 用户和组的操作

你可能感兴趣的:(程序员的Linux上手手册(2) - 基础文件操作命令)