Linux基础指令

Linux基础指令

ls

语法

1
ls [选项] [目录或文件]

功能

对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。

常用选项

  • -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
  • -d 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
  • -i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
  • -k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
  • -l 列出文件的详细信息。
  • -t 以时间排序。
  • -R 列出所有子目录下的文件。(递归)

举例

1
ls -a

pwd

语法

1
pwd

功能

显示用户当前所在的目录

cd

语法

1
cd [目录名]

功能

改变工作目录。将当前工作目录改变到指定的目录下。

举例

1
2
3
4
5
返回上级目录		cd ../
绝对路径 cd /home/litao/linux/
相对路径 cd ../day02/
进入用户家目 cd ~
返回最近访问目录 cd -

touch

语法

1
touch [ 选项 ]... 文件 ...

功能

touch 命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在 的文件。

常用选项

  • -a 或–time=atime或–time=access或–time=use只更改存取时间。
  • -d 使用指定的日期时间,而非现在的时间。
  • -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
  • -m 或–time=mtime或–time=modify 只更改变动时间。
  • -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
  • -t 使用指定的日期时间,而非现在的时间。

举例

创建一个文件

1
touch study.txt

批量创建文件

1
2
touch {a,b,c}.txt
touch {0..9}.txt

cp

语法

1
cp [ 选项 ] 源文件或目录 目标文件或目录

功能

复制文件或目录

说明

cp 指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存 在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后 的目的地并非一个已存在的目录,则会出现错误信息

常用选项

  • -f 或 –force 强行复制文件或目录, 不论目的文件或目录是否已经存在
  • -i 或 –interactive 覆盖文件之前先询问用户
  • -r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号 链接, 则一律视为普通文件处理
  • -R 或 –recursive 递归处理,将指定目录下的文件及子目录一并处理

举例

复制文件只需要将源文件和目标文件名称一起键入即可

1
cp text1.txt new_file.txt

还可以使用递归标志复制整个目录

1
cp -r test1/ test2/

mv

mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常 用的命令, 经常用来备份文件或者目录。

语法

1
mv [选项] 源文件或目录 目标文件或目录

功能

  1. 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移 至一个新的 目录中。
  2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录 名),它将 所给的源文件或目录重命名为给定的目标文件名。
  3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文 件均移至目 标目录中。

常用选项

  • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

举例

如果想要移动文件到另一个文件夹,需要输入对应文件夹的完整路径

1
mv filename.txt /home/grill

比如准备重命名文件,同时保留在同一目录中可以输入

1
mv old_file.txt new_named_file.txt

mkdir

语法

1
mkdir [选项] dirname... 

功能

在当前目录下创建一个名为 “dirname” 的目录

常用选项

  • -p、–parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好 那些尚不存在的目录,即一次可以建立多个目录

举例

1
2
mkdir images/			创建一个保存所以图像的目录
mkdir -p test1/test2 递归建立多个目录

rmdir

rmdir 是一个与 mkdir 相对应的命令。 mkdir 是建立目录,而 rmdir 是删除命令。

语法

1
rmdir [-p] [dirName]

适用对象

具有当前目录操作权限的所有使用者

功能

删除空目录

常用选项

  • p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。
1
rmdir test1

rm

rm 命令可以同时删除文件或目录

语法

1
rm [-f-i-r-v] [dirName/dir]

适用对象

所有使用者

功能

删除文件或目录

常用选项

  • -f 即使文件属性为只读(即写保护),亦直接删除
  • -i 删除前逐一询问确认
  • -r 删除目录及其下所有文件
1
rm text.txt

删除文件夹

1
rm -r test1

sudo

Linux sudo命令以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自 执行。

sudo通常用于安装软件或编辑用户主目录以外的文件

1
2
sudo apt install strings
sudo cd /root/

在运行键入的命令前,它会要求输入管理员密码

开启root

1
sudo -i

vim(vi)编辑发法

直接输入,就可以编辑文件,没有文件会自动创建一个

1
vi filename.txt 回车

然后按a或i进入编辑模式,输入想要添加的文本,然后按esc退出编辑模式,输入:wq保存并退出

echo

echo命令在终端中显示定义的文本

1
echo "Cool message"

用echo新建文件,讲文本添加到文件中

1
echo "This is a sample text" >> filename.txt

使用echo命令打印所有的文件和文件夹(ls命令的替代)

1
echo *

还可以使用echo来输出文件内容

1
echo "$(<fileName)"

在上面的命令中,’<’是重定向符,用于改变标准输入的源(从键盘改为文件fileName);<fileName将
fileName文件输入到stdin中。$(<fileName)用于获取stdin中的数据

如果一个文件是unicode编码,则利用下面这条命令,可以转化为中文

1
echo -e "$(<fileName)"

cat

语法

1
cat [选项] [文件]

功能

查看目标文件的内容

常用选项

  • -b 对非空输出行编号
  • -n 对输出的所有行编号
  • -s 不输出多行空行 一般直接使用

举例

一般直接使用

1
cat text.txt

cat指令也可以编辑文件文本(如果没有该文件会直接创建)

1
cat >> test.txt

strings

strings命令在对象文件或二进制文件中查找可打印的字符串。字符串是4个或更多可打印字符的任意序 列,以换行符或空字符结束。

语法

1
strings [选项] 文件

常用选项(部分)

  • -a –all:扫描整个文件而不是只扫描目标文件初始化和装载段
  • -f –print-file-name:在显示字符串前先显示文件名

举例

1
2
strings filename	提取文件中的字符串
strings filename > output.txt 将输出结果写入文件

Linux基础指令
https://yschen20.github.io/2025/04/25/Linux基础指令/
作者
Suzen
发布于
2025年4月25日
更新于
2025年4月25日
许可协议