目录
前言
安装和卸载软件包
ls 查看指定路径下的文件和文件夹
tar 解压缩/压缩命令
pwd 查看当前路径
cd 改变目录
mkdir 创建目录
递归创建
rm rmdir 删除文件或目录
touch 创建文件
ll、echo、重定向符(>,>>)
ll
echo
重定向符
cat 查看文件内容
前言
从0开始记录我的学习历程,我会尽我所能,写出最最大白话的文章,希望能够帮到你,谢谢。
提示:文章作者为初学者,有问题请评论指正,感谢。
安装和卸载软件包
安装软件包:
想象一下,你在应用商店找到了一个游戏或者一个实用工具,你点击“安装”,然后它就自动下载并安装到你的手机上。在Linux中,我们也有类似的“应用商店”,叫做软件仓库。当你想安装一个软件时,你可以打开终端(就像命令行窗口),然后输入一个命令,比如sudo apt-get install 游戏名
,(sudo这表示您将以超级用户的权限执行命令,避免一些因为圈钱问题而导致的错误)这个命令就会去软件仓库中找到这个游戏,下载并安装到你的电脑上。
//安装open-vm-tools这个软件包
sudo apt-get install open-vm-tools
卸载软件包: 现在假设你不再玩那个游戏了,想要删除它。在手机上,你会长按那个APP图标,然后点击“卸载”。在Linux中,你也需要打开终端,然后输入一个命令来卸载软件,比如sudo apt-get remove 游戏名
。这个命令会删除游戏,但是游戏的一些设置和保存文件可能还会留在你的电脑上。如果你想彻底删除游戏和它的所有文件,你可以使用sudo apt-get purge 游戏名
这个命令。
//卸载open-vm-toos
sudo apt-get remove open-vm-toos
清理不用的软件包: 最后,就像手机上有时候会有一些不用的缓存文件需要清理一样,Linux中也有类似的情况。有时候安装一个软件会带来一些额外的小程序,这些小程序是主软件运行所必需的。但当你删除主软件后,这些小程序有时候不会自动被删除。Linux提供了一个命令sudo apt-get autoremove
,这个命令可以帮你找到并删除这些不再需要的小程序,让你的电脑保持整洁。
ls 查看指定路径下的文件和文件夹
//查看当前路径下的文件及文件夹
ls
//查看指定路径下的文件及文件夹
ls /home/qf
//查看挡墙路径下的所有文件啊包括隐藏文件
ls-a
tar 解压缩/压缩命令
tar
(tape archive)命令是一个在Linux系统中常用的工具,用于创建、压缩和解压缩文件和目录。它的主要功能包括:
创建压缩包:
tar
可以将多个文件或目录打包成一个单一的压缩包,以便更方便地传输或存档。压缩文件:
tar
可以将文件和目录压缩成不同格式的压缩包,例如.tar.gz
(gzip格式)或.tar.bz2
(bzip2格式)。解压缩文件:
tar
可以从压缩包中提取文件和目录,还可以处理不同格式的压缩包。
知道这个过后我们就要来看一下tar中各个字母的含义。
c
:代表“create”(创建)。
- 使用
c
选项时,tar
会创建一个新的压缩包,将指定的文件或目录添加到其中。
x
:代表“extract”(提取)。
- 使用
x
选项时,tar
会从现有的压缩包中提取文件或目录。
v
:代表“verbose”(详细模式)。
- 使用
v
选项时,tar
会在执行操作时显示详细信息,以便您了解正在发生的事情。
f
:代表“file”(文件)。
- 使用
f
选项时,后面跟着的是要操作的压缩包文件名。
z
:代表“gzip”(GNU zip)。
- 使用
z
选项时,tar
会处理gzip格式的压缩包。这通常用于.tar.gz
或.tgz
文件。
j
:代表“bzip2”。
- 使用
j
选项时,tar
会处理bzip2格式的压缩包。这通常用于.tar.bz2
文件。
C
:代表“change directory”(改变目录)。
- 使用
C
选项时,后面跟着的是要切换到的目录。这在解压缩时很有用,可以将文件提取到指定目录。
下面我会根据例子来解释每个命令的作用:
解压缩文件:
tar xf VMwareTools-10.3.25-20206839.tar.gz
这个命令会将名为
VMwareTools-10.3.25-20206839.tar.gz
的压缩包解压到当前目录(默认是当前目录)。x
代表解压缩,f
代表文件。压缩文件:
tar -cvf filename.tar directory/file
这个命令会将
directory/file
路径下的文件或目录压缩成一个名为filename.tar
的压缩包。c
代表创建压缩包,v
代表在压缩或解压时显示过程信息,f
代表文件。如果你自己练习的时候在home那里创建了一个a文件 想要把a打包的话 你就直接写成 tar -cvf filename.tar home/a就可以了。另一个例子:
tar cvf test.tar vmware-tools-distrib/*
这个命令会将
vmware-tools-distrib
目录下的所有文件和子目录压缩到test.tar
这个压缩包中。*
是通配符,它可以代表任何字符或字符串。在这里,它表示匹配所有文件和子目录。解压缩到特定文件夹:
tar -xvf test.tar.gz -C test
这个命令会将
test.tar.gz
压缩包解压到test
这个文件夹中。x
代表解压缩,v
代表显示过程信息,f
代表文件,-C
代表改变到指定目录。创建gzip格式的压缩包:
tar -zcvf echo.tar.gz echo
这个命令会将
echo
目录或文件压缩成gzip格式的压缩包echo.tar.gz
。z
代表gzip格式,c
代表创建压缩包,v
代表显示过程信息,f
代表文件。解压缩到指定目录:
tar -zxvf archive.tar.gz -C /path/to/directory
这个命令会将
archive.tar.gz
压缩包解压到/path/to/directory
这个指定的目录。z
代表解压gzip格式的压缩包,x
代表解压缩,v
代表显示过程信息,f
代表文件,-C
代表改变到指定目录,就是后面这些/path/to/directory。
注意:如果压缩时选择的参数是cvf,解压时的参数xvf
如果压缩时选择的参数是zcvf,解压时的参数可以是xvf或者zxvf。
不过其实一般情况下xf就能满足大多数情况了
pwd 查看当前路径
pwd用于显示当前工作目录(也称为当前路径)。
pwd
:代表“print working directory”(打印当前工作目录)。- 使用
pwd
命令时,它会在终端中显示当前所在的目录路径。
例如,如果您在终端中运行 pwd
,它会返回类似于以下的输出:
这表示您当前位于 /home/ljl
这个目录下。pwd
帮助您了解您在文件系统中的位置,方便您进行其他操作,比如查找文件、切换目录等。就是看你娃儿在哪个地方,如果你不知道你在哪里了 找不到了 就用pwd看看自己在哪里。
cd 改变目录
//切换到上一级目录
cd ..
//切换到当前目录
cd .
//切换到指定目录
cd /hone/qf
//切换到根目录
cd ~
切换到上一级目录:
- 使用
cd ..
命令,您可以将当前工作目录切换到上一级目录。- 例如,如果您当前在
/home/user/documents
目录下,运行cd ..
后,您将切换到/home/user
目录。切换到当前目录:
- 使用
cd .
命令,实际上不会改变当前工作目录。它只是一个占位符,表示“当前目录”。- 这通常用于脚本或其他需要明确指定当前目录的情况。感觉没啥用
切换到指定目录:
- 使用
cd /home/qf
命令,您可以直接切换到指定的目录/home/qf
。- 这将更改您的当前工作目录为
/home/qf
。切换到根目录:
- 使用
cd ~
命令,您可以切换到当前用户的根目录(也称为主目录家目录)。- 例如,如果您的用户名是
qf
,那么cd ~
将切换到/home/qf
目录。
- 相对路径:从当前路径开始
- 绝对路径:从根目录开始
- ”/“:根目录
你在用cd的时候一定要看清楚自己在哪里,相对路径绝对路径要分清楚,不然会报错。
mkdir 创建目录
mkdir
是一个常用的命令,用于在Linux系统中创建新目录(也称为文件夹)
mkdir
:代表“make directory”(创建目录)。- 使用
mkdir
命令时,您可以指定一个目录名,然后它会在当前工作目录下创建一个新的子目录。
例如,如果您在终端中运行:
mkdir my_folder
这将在当前目录下创建一个名为 my_folder
的新目录。您可以在这个目录中存储文件、创建其他子目录,或者进行其他操作。
你也可以用空格间隔一次来创建多个目录。
mkdir dir1 dir2 dir3
这个命令会在当前工作目录下创建三个新目录:dir1
、dir2
和dir3
。只要确保每个目录名之间有空格分隔,mkdir
命令就可以同时创建它们。
如果结合使用-p
选项,您还可以为每个目录创建多级子目录,例如:
mkdir -p project/{dir1,dir2,dir3}/subdir
这将在project
目录下创建dir1
、dir2
和dir3
目录,每个目录中都包含一个名为subdir
的子目录。
递归创建
mkdir
命令的递归创建功能允许您一次性创建多个嵌套的目录。这是通过 -p
(代表“parents”)选项来实现的。如果您想创建一个目录,以及它的所有父目录,即使这些父目录还不存在,您可以这样做:
mkdir -p /path/to/directory/subdirectory
这个命令会创建 subdirectory
,以及路径中的所有父目录 /path/to/directory
。如果这些目录已经存在,mkdir -p
不会报错,而是会安静地继续执行。
例如,如果 /path
和 /path/to
这两个目录还不存在,上面的命令会首先创建 /path
,然后是 /path/to
,最后是 /path/to/directory
和 /path/to/directory/subdirectory
。
这个 -p
选项在自动化脚本中非常有用,因为它可以确保所需的目录结构被创建,而不管其中的某些部分是否已经存在。
rm rmdir 删除文件或目录
在Linux系统中,删除文件和目录的命令分别是 rm
和 rmdir
,以及 rm
命令的 -r
选项。下面是详细的解释:
-
删除文件:
- 使用
rm
命令可以删除一个或多个文件。 - 例如,要删除名为
file.txt
的文件,您可以使用:rm file.txt
- 如果要删除多个文件,可以一次性列出所有文件名,用空格分隔。注意 这个没加-r只能删文件!!!
- 使用
-
删除目录:
rmdir
命令用于删除空目录。- 例如,要删除名为
empty_folder
的空目录,您可以使用:rmdir empty_folder
- 请注意,
rmdir
只能删除空目录。如果目录中有文件或其他目录,rmdir
会失败。
-
递归删除目录:
- 如果您需要删除一个目录及其所有内容(包括所有文件和子目录),您可以使用
rm
命令配合-r
(或-R
)选项,这代表递归删除。 - 例如,要删除名为
folder
的目录及其所有内容,您可以使用:rm -r folder
- 这将删除
folder
目录以及其中的所有文件和子目录。
- 如果您需要删除一个目录及其所有内容(包括所有文件和子目录),您可以使用
-
强制删除:
- 如果您想要在删除时不接收任何提示,可以使用
-f
(force)选项。 - 例如,要强制删除
folder
目录及其所有内容,您可以使用:rm -rf folder
- 这将在没有任何确认的情况下删除目录和文件,所以请谨慎使用。
- 如果您想要在删除时不接收任何提示,可以使用
touch 创建文件
touch
命令主要用于创建一个新的空文件。它的工作原理非常直接:如果指定的文件不存在,touch
将会创建一个没有任何内容的新文件。如果文件已经存在,touch
命令不会对文件内容做任何改变,只会更新文件的时间戳。
例如,要使用 touch
创建一个名为 example.txt
的新文件,你可以在终端中输入以下命令:
touch echo/1 echo/2 echo/3
执行这个命令后,当前目录中就会出现三个名字分别为为 1
、2、3的空文件。如果 1、2、3文件已经存在,这个命令将更新该文件的时间戳,而不会更改文件内容。
ll、echo、重定向符(>,>>)
ll
ll
命令实际上是ls -l
的别名,它提供了一个文件或目录的详细列表。这个列表包括文件的权限、所有者、大小和最后修改时间。例如:
-rw-r--r-- 1 user group 4096 Apr 7 10:00 example.txt
这里,-rw-r--r--
表示文件权限,1
表示链接数,user
是文件所有者,group
是文件所属的用户组,4096
是文件大小(字节),Apr 7 10:00
是最后修改时间,example.txt
是文件名。
echo
echo
命令用于在终端输出文本或变量内容。例如:
echo "Hello, World!"
这将在终端显示Hello, World!
。你可以理解成c里面的printf。
重定向符
重定向符号>
和>>
用于将命令的输出从标准输出(通常是终端)重定向到文件。
>
:如果目标文件不存在,它会创建文件;如果文件已存在,它会覆盖文件原有内容。例如:
echo "Hello, World!" > hello.txt
这会创建或覆盖hello.txt
文件,并写入Hello, World!
。
>>
:如果目标文件不存在,它会创建文件;如果文件已存在,它会将新内容追加到文件末尾。例如:
echo "Hello again!" >> hello.txt
这会在hello.txt
文件末尾追加Hello again!
,而不会覆盖原有内容。
cat 查看文件内容
cat
命令用于查看文件的内容。它会将文件的内容输出到终端。以下是一些常见用法:
-
查看单个文件:
cat filename.txt
这将在终端显示
filename.txt
文件的全部内容。 -
查看多个文件:
cat file1.txt file2.txt
这会将
file1.txt
和file2.txt
的内容依次输出到终端。 -
查看文件并显示行号:
cat -n filename.txt
这将在终端显示
filename.txt
文件的内容,并在每一行前面加上行号。 -
合并文件:
cat file1.txt file2.txt > combined.txt
这会将
file1.txt
和file2.txt
的内容合并到一个新文件combined.txt
中。如果你之前combined.txt文件里面有内容会直接覆盖掉,这个需要注意。
总结
以上就是今天要讲的内容,本文仅仅简单介绍了Linux中常用的一些操作pwd、cd、ls、echo、rm、rmdir等,祝愿你我的朋友在学习的路上一帆风顺,也祝愿我会成为一个优秀的嵌入式工程师。