linux常用命令备忘单:
转:https://pimylifeup.com/linux-commands-cheat-sheet/
通用命令
man命令
该man
命令是manual的缩写,用于检索指定命令的手册页。
man [COMMAND]
使用man命令是一个有用的工具,可用于学习各种Linux命令的工作方式,并且在您遇到困难时会很有用。
您甚至可以使用该命令man man
查看man命令本身的手册页。
使用man命令的示例:
man man
man ls
需要注意的一件事是,并非Linux中的每个命令都有一个手册页,与Linux提供的工具相比,第三方软件包更是一个问题。
管道
Linux中的管道是一种重定向形式,可用于将一个命令的输出发送到另一个命令。
[COMMAND1] | [COMMAND2]
该管道由竖线表示,|
并在两个命令之间使用。然后将第一个命令的输出重定向到第二个命令。
例如,仅显示ls
命令的前10个条目,我们可以通过head
命令传递其结果。
在Linux中使用管道的示例:
ls | head
在Linux中,管道还有许多其他用例。管道是一种可以真正简化基于Linux操作系统的管理的工具。
文件系统命令
本节涉及有助于在基于Linux的操作系统上管理文件系统的Linux命令。
这些Linux命令处理诸如复制,移动,删除,编辑,解压缩和重命名文件之类的任务。这些命令涉及诸如文件权限之类的任务。
在Linux中遍历目录
在Linux中,有几个不同的命令可以使您更轻松地遍历和处理目录。
通过在斜杠(/
)前面放置一个点,./
将表示您正在引用当前目录
像这样在斜杠前添加两个../
点将意味着您正在引用当前目录的父目录。
代字号表示~
主目录。也即登录的用户名目录.每当您需要快速引用主目录中的文件或从主目录导航到文件时,此符号都很方便。
遍历目录的示例:
./
../
~
LS命令
ls
Linux中的命令将列出当前目录或您指定的目录的内容ls /home/pi
。
ls [OPTIONS] [FILE/DIRECTORY]
您可以利用该-l
(字母)
标志显示有关文件或目录的更多信息。
该标志提供了大量的额外信息,例如权限,所有者,组,大小,日期和上次编辑的时间戳。
您可以参考下面的图形,以查看通过使用带-l
标志的ls
命令返回的额外数据。
该ls
命令以列表格式返回其数据,每个文件/目录都在新行中列出。
通过遵循有关在Linux中使用ls命令的指南,了解更多信息。
使用ls命令的示例:
ls /home/pi
ls -l /home/pi
tree命令
在Linux中,该tree
命令用于递归显示目录的内容。
tree [DIRECTORY]
该tree
命令返回当前目录和所有子目录中所有文件的基于深度的缩进列表。
当您要计算目录的文件夹结构时,此命令非常有用。
当tree
命令不带目录使用时,它将递归列出当前目录的内容。
如果指定了目录,则该tree
命令将搜索该目录。
使用tree命令的示例:
tree
tree /home/pimylifeup
tree命令的示例结果
在下面,您可以tree
在Raspberry Pi上的用户主目录中查看使用命令的结果。
pi@raspberrypi:~ $ tree
.
├── Downloads
│ ├── SampleFile.zip
│ └── TestFolder
│ ├── Hello.txt
│ └── PiMyLifeUp.com
├── hellofile.txt
├── MagPi
│ └── MagPi85.pdf
└── SampleFile
CD指令
从一个目录切换到另一个目录。
cd [DIRECTORY]
要使用该cd
命令,只需输入cd
后跟要更改的路径即可。
您可以参考我们的Linux中的遍历目录部分,以获取有关如何使用一些简单的快捷方式更快处理目录的提示。
使用cd命令的示例:
cd /directory
cd ..
您总是可以通过我们的指南使用cd命令来了解有关遍历Linux的更多信息。
pwd命令
该pwd
命令是直接命令,从根目录(/
)开始输出当前目录的路径。
pwd
代表Print Working Directory。
当您想知道当前工作目录的路径时,此命令很有用。
使用pwd命令的示例:
pwd
mkdir命令
该mkdir
命令将在您指定的位置创建一个新目录。
mkdir [OPTIONS] [DIRECTORY]
如果mkdir
仅使用名称运行命令,则它将在当前工作目录中创建该目录。例如mkdir newDirectoryName
。
否则,如果使用指定的路径运行该命令,它将在该位置创建目录。例如mkdir /home/newDirectoryName
。
默认情况下,该mkdir
命令仅在所有路径都存在的情况下才在该路径中创建一个新目录。
例如,mkdir /home/parent/old/young
如果“父”或“旧”目录不存在,则将不起作用。
要创建所有不存在的父目录,可以使用该-p
标志。该标志将递归创建任何 的目录。
使用mkdir命令的示例:
mkdir pimylifeup mkdir /home/pimylifeup
mkdir -p /home/pimylifeup/create/new/directories #可能会提示权限不够. 前面可以加上sudo
rmdir命令
该rmdir
命令对于删除空目录很有用。
rmdir [OPTIONS] [DIRECTORY]
有两种使用该rmdir
命令的方法,第一种是通过仅指定其路径来删除单个空目录。
例如: rmdir emptydir
使用rmdir
命令的第二种方法是使用-p
标志,只要所有父目录也为空,它将删除所有父目录。
例如: rmdir /emptydir1/emptydir2/emptydir3/
如果rmdir
目录不为空,则无法强制该命令删除目录,为此,您将需要使用rm</code command.
使用rmdir命令的示例:
rmdir emptydir
rmdir /emptydir1/emptydir2/emptydir3/
RM命令
该rm
命令将删除指定的文件或目录。在Linux的日常使用中,您将非常依赖此命令。
rm [OPTIONS] [FILE/DIRECTORY]
rm
在Linux中可以使用几种不同的方法来使用该命令。
第一种方法是删除单个文件。您可以使用以下rm
命令删除单个文件,后跟文件路径。
例如: rm /home/pimylifeup/samplefile.txt
要删除目录,您将需要使用该-r
标志。此标志还将删除该目录中包含的所有文件或目录。
例如: rm -r /home/pimylifeup/
注意:该rm
命令并没有真正删除文件,而是从文件系统取消链接并将它们标记为可用空间。
为确保文件已被彻底删除,应使用shred
命令。
请注意,尽管如此,该rm
命令仍然会使恢复文件变得异常困难。
使用rm命令的示例:
rm /path/to/file
rm -r /home/pimylifeup
CP命令
该cp
命令将在指定位置创建文件的副本。
cp [OPTIONS] [FILETOCOPY] [NEWFILENAME]
您可以将-r
标志与cp
命令一起使用以递归方式复制目录的全部内容。
使用cp命令的示例:
cp file newfilename
cp -r /path/to/copy/ /newpath/to/copy/to
MV命令
该mv
命令移动文件并将其放置在指定位置。
mv [OPTIONS] [FILETOMOVE] [WHERETOMOVETO]
如果要使用mv
命令移动目录的内容,则需要利用该-r
标志。
此命令与相似cp
,但是它不会复制文件,而是将其移动。
您也可以mv
在Linux中使用该命令来重命名文件,方法是先引用要重命名的文件,然后再引用新名称。
使用mv命令的示例:
mv file.txt ./newdirectory
mv file.txt newname.txt
mv -r /directorytomove /newdirectory
touch
该touch
命令将更新指定文件的最后修改的时间戳,或者如果文件不存在则创建文件。
touch [FILENAME]...
使用该touch
命令创建的文件将为空。
该命令对于想要创建文件但在创建时没有数据可存储的用户很有用。
使用touch命令的示例:
touch file.txt
touch file1.txt file2.txt file3.txt
CAT命令
该cat
命令是“concatenate”的缩写,具有多种不同功能has a variety of different functions。
cat [OPTION] [FILENAME]...
首先,cat
可以使用该命令来1.查看文件的内容,方法是使用,cat
后跟文件名。
例如,cat filename.txt
将显示名为filename.txt的文件的内容。
您还可以使用cat
命令2.通过使用大于>
字符来创建文件。
例如,cat > newfile.txt
将创建一个名为newfile.txt的文件。
您也可以使用该cat
命令3.输出多个文件的内容。
例如,cat *.txt
将列出当前目录中所有.txt
文件的内容。
例子:
cat file.txt
cat file.txt file.txt
cat *.txt
cat > newfile.txt
cat -n textfile1 > textfile2 #把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里
该cat
命令还有很多功能,但我们将在以后的教程中介绍。参:https://www.runoob.com/linux/linux-comm-cat.html
head
该head
命令将显示文件的开头。
它与tail
命令相反。 (It is the opposite of the tail
command.)
head [OPTIONS] [FILENAME]
您可以将–n
标志与head
命令一起使用以指定要显示的行数。
缺省情况下,head
命令显示的行数为10。By default the amount of lines shown by the head
command is 10.
使用head命令的示例:
head file.txt
head file.txt -n 20
tail
该tail
命令将显示文件的结尾。例如,它对于检索日志文件中的最新行很有用。
它与head
命令相反。
tail [OPTIONS] [FILENAME]
要指定要显示的行数,可以使用该-n
标志。
默认情况下,该tail
命令将显示文件中的最后10行。
使用tail命令的示例:
tail file.txt
tail file.txt -n 20
CHMOD命令
该chmod
命令用于更改一个或多个文件的权限。
chmod根据您的喜好提供符号或数字符号。
例如,用于符号表示法的符号是u(用户),g(组),o(其他用户),r(读取),w(写入)和x(执行)。
例如chmod u+x samplefile
。此命令会将执行许可权添加到名为samplefile的文件的所有者。
如果使用数字符号,请参考下表以查看哪个数字表示所需的权限。
数 | 权限 |
---|---|
0 | 没有权限 |
1个 | 执行 |
2 | 写 |
3 | 编写并执行 |
4 | 读 |
5 | 读取并执行 |
6 | 读和写 |
7 | 读,写和执行 |
数字的顺序应遵循所有者,组,然后是其他人,
例如,该命令cmod 777 samplefile
将对名为samplefile的文件的用户,组和其他用户赋予完全权限。
使用chmod命令的示例:
chmod 754 file
chmod u=rw file
我们在指南中进一步研究了chmod命令。
本指南将更全面地说明符号和数字符号之间的区别。
CHOWN命令
该chown
命令可用于更改用户和/或拥有文件的组。
chown [OPTIONS] [USER]:[GROUP] [FILE/DIRECTORY]
例如,我们可以使用以下命令sudo chown pi:root samplefile
将名为samplefile的文件的所有者更改为pi,将组的所有者更改为root。
需要注意的一件事是,该chown
命令通常需要以超级用户身份运行才能运行。
您可以通过在运行sudo su
命令之前运行或仅sudo
在命令前面附加来执行此操作。
使用chown命令的示例:
sudo chown pi:root file
DD命令
该dd
命令主要用于在基于Unix的系统上复制和转换文件。
dd [OPTIONS]
该dd
命令通常用于创建整个磁盘到单个文件的副本,此功能对于创建备份非常有用。
例如,使用命令dd if=/dev/sdd of=backup.img
将创建安装在的SD卡或USB驱动器的备份映像/dev/sdd
。
还原映像时,请确保使用正确的驱动器,因为该dd
实用程序将覆盖/擦除还原到的磁盘。
使用dd命令的示例:
dd if=/dev/sdd of=backup.img
dd if=backup.img of=/dev/sdd
DF命令
该df
命令将显示可用于所有当前安装的文件系统的磁盘空间。
df [OPTIONS] [FILE]
如果使用df
命令指定文件,则它将返回包含该文件的安装的可用空间。
您也可以使用-h
(df -h
)以易于阅读的格式查看输出。
例如,字节将被替换为千字节(KB),兆字节(MB),千兆字节(GB)或太字节(TB)
使用df命令的示例:
df
df /home/pimylifeup/samplefile
df -h
df -h /home/pimylifeup/samplefile
UNZIP Command
该unzip
命令可用于从压缩的zip存档中提取文件和目录。
unzip [OPTIONS] [ARCHIVE]
如果要使用unzip
命令将文件提取到特定的目标,则可以使用该-d
标志。
使用unzip命令的示例:
unzip archive.zip
unzip archive.zip /dir/to/unzip/to/
TAR命令
该tar
命令可用于压缩tar格式的文件以及提取tar存档。
tar [OPTIONS] [ARCHIVE]
您也可以使用该tar
命令提取tar.gz
和tar.bz2
存档。
要创建压缩的tar文件,您需要使用该-c
标志。
例如tar -cvzf archive.tar.gz directory
。
为了提取tar归档文件的内容,您需要使用-x
标志。
例如tar -xvzf filename.tar.gz
。
如果要将tar存档的内容提取到另一个目录,则可以使用该-C
标志。
例如tar -C /dir/tar/here -zxvf archive.tar.gz
。
使用tar命令的示例:
tar -cvzf archive.tar.gz directory
tar -xvzf archive.tar.gz
tar -C /dir/tar/here -zxvf archive.tar.gz
WGET命令
该wget
命令是有用的实用程序,用于将文件从网站下载到您的设备。
wget [OPTIONS] [URL]
该wget
命令的最基本用法包括使用wget,然后使用您要从中下载文件的URL。
例如,wget https://example.com/file.txt
将从网站https://example.com/下载file.txt到当前目录。
如果您想使用其他名称将文件保存到设备中,则可以使用该-O
标志,后跟要使用的文件名。
例如,wget -O pimylifeup.txt https://example.com/file.txt
将下载名为file.txt的文件,然后将下载输出重定向到我们的pimylifeup.txt文件。
使用wget命令的示例:
wget https://example.com/file.txt
Linux中的搜索命令
Linux命令备忘单的这一部分适用于搜索/查找目录和文件的命令。
当您尝试查找不在通常位置的内容时,这些命令非常方便。
GREP命令
该grep
命令用于在文件内部搜索某些模式。
这是一个非常强大的工具,因为您能够使用复杂的
grep [OPTIONS] [REGEX] [FILE]
GREP代表摹 lobally搜索[R egular Ë上的表达和p RINT。
例如,grep "search" *.txt
将在当前目录中的所有文本文件中搜索字符串“ search”。
GREP还支持正则表达式,该正则表达式允许在搜索中包括特殊的字母组合。
使用grep命令的示例:
grep "search" *.txt
grep "Pi.*Life Up" *.txt
FIND命令
该find
命令将搜索与特定模式匹配的目录和文件。
find [DIRECTORY] [OPTIONS]
有许多不同的组合可用于帮助扩展此命令的准确性。
find
可以将命令的结果通过管道(|
)传递到其他命令,例如grep,以再次改善搜索。
使用find命令的示例:
find . -name 'help'
WHEREIS命令
该whereis
命令将显示特定命令的文档,二进制文件和源文件。
它将查找标准程序位置,直到找到请求的命令。
使用whereis命令的示例:
whereis grep
联网命令
以下命令与网络相关,可用于解决与网络相关的问题或仅用于信息收集。
我们包含了这些命令,因为它们对于处理Linux操作系统和测试网络非常有用。
PING命令
该ping
命令通常用于检查是否可以与另一台主机进行通信并监视响应时间。
ping [IPADDRESS/HOSTNAME]
仅指定主机名(例如ping pimylifeup.com
)或IP地址(例如ping 8.8.8.8
),就可以将其与默认设置一起使用。
使用ping命令的示例:
ping pimylifeup.com
ping 8.8.8.8
HOSTNAME命令
该hostname
命令将显示系统的当前主机名。
hostname [OPTIONS] [HOSTNAME]
特权(超级)用户可以通过提供主机名作为参数(sudo hostname newName
)来将其设置为新的主机名。
该-I
标志。可以与hostname
命令一起使用,以代替显示设备主机名的IP。
使用hostname命令的示例:
hostname
hostname -I
sudo hostname newName
IFCONFIG命令
该ifconfig
命令在不带任何参数的情况下运行时,将显示当前系统上接口的网络配置详细信息。
ifconfig [INTERFACE]
通过为命令提供接口名称(例如eth0或lo),您可以看到该特定接口的配置。
您还可以配置接口,也可以将它们设置为up或down。有关如何执行此操作的更多信息,最好参考手册页。
使用ifconfig命令的示例:
ifconfig
ifconfig eth0
SSH命令
该ssh
命令表示“ 小号 ecure SH ELL”并允许你通过加密网络连接来连接到另一终端。
ssh [OPTIONS] [USERNAME]@[IPADDRESS]
这就是我们通常远程连接到Raspberry Pi的方式。
在Windows系统上,您可能会使用Putty之类的工具通过SSH连接到网络。
使用ssh命令的示例:
ssh user@IP_Address
SCP命令
该scp
命令对于使用SSH协议将文件从一台计算机安全地复制到另一台计算机很有用。
scp [TO COPY FILE/DIRECTORY] [COPY TO FILE/DIRECTORY]
SCP是安全复制的缩写cp
,除了可以通过SSH协议接受位置外,其功能与命令完全相同。
使用该scp
命令后,将在开始传输之前提示您输入密码。
使用scp命令的示例:
scp /home/bob/*.jpg gus@example.com:/home/gus/archive
scp gus@example.com:/home/gus/archive/*.jpg /home/bob
流程管理命令
在Linux命令备忘单的这一部分中,我们将介绍有助于进程管理的命令。
就像任何操作系统一样,过程管理在Linux上也至关重要。
如果需要,下面的命令将帮助您诊断,监视和终止进程。
PS指令
该ps
命令将提供基于Linux的操作系统上当前正在运行的进程的快照。
ps [OPTIONS]
您可以在此命令中使用多种选项。如果您需要更多信息,只需使用man ps
即可获取所有详细信息。
使用ps命令的示例:
ps
TOP命令
该top
命令可用于查看有关当前正在运行的进程的实时信息。
top [OPTIONS]
与该ps
命令很像,您可以在此命令中使用大量其他选项。
使用top命令的示例:
top
杀死命令
该kill
命令听起来可能很残酷,但是它是用于终止一个或多个进程的有用实用程序。
kill [PID]
pkill [NAME]
killall [NAME]
当您发现自己的进程不会终止或被冻结时,这是一个有用的命令。
您可以使用此命令的一些变体。
请参阅以下示例,以更好地了解如何使用kill
命令的每个变体。
使用kill命令的示例:
#Kill process with id pid (pid is process id)
kill pid
#Kill the process with matching name
pkill name
#Kill all processes with the matching name
killall name
用户命令
这些命令对于在同一操作系统上运行多个用户的任何人最有用。
系统管理员通常使用它们来添加,删除和查看用户以及他们可能在做什么。
ID
该id
命令用于打印当前用户和组的ID。
id [OPTION] [USERNAME]
对于需要ID号的特定组或用户设置权限时,此命令非常方便。
该-g
floag将打印组ID而-u
标志将打印用户ID。
使用id命令的示例:
id
id -u pi
id -g pi
世卫组织司令部
该who
命令将列出当前登录的所有用户以及有关已登录用户的任何其他有用信息。
使用who命令的示例:
who
LAST命令
该last
命令显示最近登录的用户列表。
该命令通过搜索位于以下位置的文件而起作用 /var/log/wtmp
使用最后一条命令的示例:
last
GROUPADD命令
该groupadd
命令将完全按照其听起来的方式运行,它将使用您提供的选项创建一个新组。
groupadd [OPTIONS] [GROUPNAME]
您将需要以root用户身份登录才能正常运行此命令。
使用groupadd命令的示例:
groupadd gus
USERADD命令
该useradd
命令将再次按照其听起来的方式运行,并创建一个新用户。
useradd [OPTIONS] [USERNAME]
创建新用户时,需要使用passwd为该帐户分配密码,然后才能使用该密码。
您需要具有超级用户权限或以root用户身份登录才能正常工作。
使用useradd命令的示例:
useradd gus
USERDEL命令
该userdel
命令将完全按照您的期望执行操作,删除用户帐户。
userdel [OPTIONS] [USERNAME]
还要特别注意的是,它还将删除与该用户有关的所有关联文件。
如果听起来有点笨拙,那么deluser
可能是一个更好的选择,因为除非使用该--remove-home
标志,否则它不会删除主目录。
如您所料,这两个命令都需要超级用户权限。
使用userdel命令的示例:
userdel gus
deluser gus
USERMOD命令
该usermod
命令用于修改用户帐户。
usermod [OPTIONS] [USERNAME]
您可以使用很多选项进行更改。
例如,-d
将允许您更改用户的主目录。
您需要成为超级用户才能进行任何更改。
使用usermod命令的示例:
usermod -d /home/gusNewDirectory gus
PASSWD命令
passwd
命令是最重要的命令之一,因为它可以让您更改帐户的密码。
passwd [USERNAME]
如果指定用户名,则该passwd
命令将修改该帐户的密码。
要修改其他帐户的密码,您需要超级用户特权。
使用passwd命令的示例:
passwd
passwd gus
总会有更多的命令,但希望此Linux命令备忘单涵盖了所有重要的命令。
如果您只是开始使用Pi并想了解更多信息,请务必查看有关使用Pi入门的方便部分。
如果您想要这个Linux备忘单的一个很酷的可下载版本,那么您可以在这里下载它。再次与本文类似,如果您发现问题,请确保在下面留下评论。
如果您觉得我错过了一些对于初学者和高级用户来说很重要的命令,那么请务必在下面留下评论。a