文章目录
软件管理
1)查询目录信息
应用文件系统最常用的操作就是查看目录或文件的相关信息,应用的命令是ls,该命令可以列出目录中的文件。也可以查看文件的具体属性信息,使用不同的参数来实现特定的查询,经常使用的参数有-l、-a、-R,分别表示以长格式显示查询、查询目录下所有文件,包括隐藏文件、递归显示查询目录下的文件。
查询根目录下的所有文件,直接应用ls命令。
ls /
查询根目录下的内容
如果要知道查询的目录下的项是文件还是目录,可以应用参数-l来进行:
以长格式查询根目录下的内容
ls -l /
查询结果中,每行的第一个字符如果是“d”,表示目录;如果是“-”,表示普通文件;如果是“l”,表示是链接文件。ls -l 命令语句可以缩写为ll。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gUrDiy6t-1651570991968)(https://raw.githubusercontent.com/Ckingt-k/photos/main/image-20220503091206554.png)]
ls命令还可以对一个文件的属性信息进行查询。查询/root目录下的文件的属性信息如下:
查询/root目录下文件的属性信息
ll /root
2)切换目录路径
(cd命令:切换当前目录百至其它目录,比如进入/etc目录,则执行 cd /etc
cd /: 在Linux 系统中斜杠“/”表示的是根目录。cd / ,即进入根目录.
cd ~命令是,进入用户在该系统的home目录,例如xz用户,则进入/root/xz目录。)
在进行对文件或目录操作的过程中,经常会进入到某一个目录中对其中的文件或目录进行操作,实现这一功能的命令为cd。
进入到/usr目录下,并查看该目录的内容
cd /usr
ls
执行以上命令的过程如下图:
由结果得知,在cd命令执行完毕后,系统显示当前的目录为usr,说明已经实现了路径的切换。
3)创建软件存储目录
在熟悉用ls命令获取根目录下的目录和文件的信息后,就可以开始创建软件存储的目录。应用命令mkdir,首先创建文件管理系统的根目录cloudscape,然后在该目录下创建软件存储目录software
创建文件系统根目录cloudscape,并查看创建结果
cd ~
mkdir /cloudscape
ls /
上述代码执行效果如下图:
接下来应用cd命令切换到cloudscape目录下,并用mkdir命令创建软件存储目录software。
切换到目录cloudscape,创建软件存储目录software,并查看结果
接下来应用cd命令切换到cloudscape目录下,并用mkdir命令创建软件存储目录software。
切换到目录cloudscape,创建软件存储目录software,并查看结果
cd /cloudscape
mkdir software
ls
上述代码执行效果如下图:
4)下载软件到存储目录
使用wget命令将软件下载到软件存储目录software中,现在将数据库软件openGauss和web软件nginx进行下载。
切换到software目录,并下载openGauss软件
cd software
wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/2.0.0/x86/openGauss-2.0.0-CentOS-64bit-all.tar.gz
下载nginx软件,并查看下载结果
wget http://nginx.org/download/nginx-1.10.2.tar.gz
ls
5)重命名文件名
使用rename命令可以对目录名和文件名进行重新命名,对应操作过程中目录名称或文件名称作修改的,可以使用该命令。新创建一个目录“veb”,正确的目录名为“web”,将其使用rename进行修改。
创建目录veb,并将其重名为web
mkdir veb
rename veb web veb
ls
6)删除目录和文件
对文件管理系统中创建的错误的或无效的目录或文件,可以通过rm命令进行删除。rm命令在删除目录时,需要参数-r;对于空目录也可以用rmdir命令。
现在,在software目录下创建rmtest目录,并在该目录下创建rmfile1,rmfile2两个文件,先将rmfile1删除,然后再删除rmtest目录。
创建rmtest目录,并在rmtest目录下创建rmfile1、rmfile2文件
mkdir rmtest
touch rmtest/rmfile1
touch rmtest/rmfile2
创建rmtest目录,并在rmtest目录下创建rmfile1、rmfile2文件
rmtest目录和rmfile1、rmfile2文件已经创建完毕,接下来删除rmfile1文件
删除文件rmfile1
rm rmtest/rmfile1
接下来删除目录rmtest及其内容:
删除目录rmtest
rm -r rmtest
如果想在删除目录时不需要再确认,可以通过强制删除的方式直接删除目录及其下的内容,只需要添加参数-f即可。
7)创建用户
文件管理系统中对于不同的文件在存取访问时,常常会面向指定的用户,对不同的用户具有不同的存取权限,这就需要先在系统中创建用户。现在创建nguser、gsuser、oruser三个用户,使用的命令为useradd或adduser。
创建用户nguser、gsuser、oruser
cd ~
useradd nguser
useradd gsuser
useradd oruser
用户创建完毕,通过cat命令查看/etc/passwd文件验证用户是否创建成功。
查询系统用户信息
cat /etc/passwd
用户创建完毕,需要为用户设置密码,使用的命令为passwd。先将创建的三个用户的密码分别设置为user1@123、user2@123、user3@123,具体设置过程如下:
为用户nguser、gsuser、oruser设置密码
passwd nguser
passwd gsuser
passwd oruser
8)删除用户
userdel -r oruser
命令执行完毕后,没有任何信息返回,表明该命令执行成功。
9)创建用户组
文件管理系统中为了能够批量设置一批用户存取访问时,经常会创建用户组,让在组中的用户都具有组的属性特点,现在创建 nggp、gsgp、orgp三个用户组,应用的命令为groupadd:
创建用户组nggp、gsgp、orgp
groupadd nggp
groupadd gsgp
groupadd orgp
可以查看文件/etc/group,来获取创建的用户组的结果。
查看系统用户组
cat /etc/group
可以使用gpasswd命令结合参数-M将用户添加到用户组中。现将用户nguser、gsuser分别添加到用户组nggp、gsgp中,操作过程如下:
将用户nguser、gsuser分别添加到用户组nggp、gsgp
gpasswd -M nguser nggp
gpasswd -M gsuser gsgp
10)删除用户组
可以使用groupdel命令删除指定的用户组,现将用户组orgp删除
删除用户组orgp
groupdel orgp
11)设置目录或软件包的权限
可以使用chmod命令设置目录或软件包的权限,可以通过数字的方式也可以通过加号“+”或减号“-”的方式对目录或软件包的权限进行设置。通过使用ls命令的长格式查询的方式,可以查看目录或软件包当前的权限。
以长格式查询软件存储目录
ll /cloudscape/software
由查询的结果可以得知列出的目录和软件包的每一行开始的第2个字符到第10字符的9个字符长度用来表示权限,这9个字符是每三位一组,这三组从左到右分别表示拥有者对该目录或软件包的权限、与拥有者同组的其他用户对该目录或软件包的权限、与该拥有者不同组的其他用户对该目录或软件包的权限,每组中的三个字符从左到右依次表示为读、写、执行的权限。
由上面的查询的结果可知,web的目录的权限的数字表示为755,现在对web目录的权限进行修改,让与该目录的拥有者同组的其他用户也具有写的权限,需要在第二组的写的位置由“-”修改为“w”,数字表示为2,那么使用数字的表示方式该权限最终数值为775,实现过程如下。
修改web目录的权限为775,并查看修改后的权限
cd /cloudscape/software
chmod 775 web
ll
还可以通过加号“+”的方式进行权限的设置。
应用加号“+”修改web目录的权限为775,并查看结果
chmod g+w web
ll
应用加号“+”修改web目录的权限为775 ,并查看结果
结果显示,采用两种修改权限的方式,最终的操作结果是一致的。
12)查找指定的软件包
应用find命令可以查找满足条件的软件包,通过应用不同参数实现不同方式的查找:
• -name:按名称查找;
• -size :按大小查找
• -user:按属性查找;
• -type:按类型查找。
现查找nginx开头的软件包,结合统配符的使用,实现的过程如下:
查找nginx开头的软件包的信息
find -name nginx*
13)筛选指定条件的目录或软件包
可以使用grep命令来获取指定的目录或软件包的信息,该命令通常与管道符“|”结合使用。
查找具有“open”字符的软件包或目录信息
ls -R | grep open
脚本文件管理
1)创建脚本文件目录
首先应用cd命令切换到cloudscape目录下,使用mkdir命令创建存取脚本文件目录“jsdir”。
切换路径并创建脚本文件存取目录
cd /cloudscape
mkdir jsdir
2)创建脚本文件
应用touch命令可以实现对脚本文件的创建,先切换到jsdir目录下,然后创建js1、js2、js3文件。具体代码如下:
切换路径,并创建脚本文件
cd jsdir
touch js1 js2 js3
3)移动脚本文件
现在jsdir目录下创建子目录名为jsbase,现应用mv命令将js3文件移动到jsbase目录中,并修改其名称为js3base。
创建目录jsbase,移动js3并修改为js3base
mkdir jsbase
mv js3 ./jsbase/js3base
由结果可以得知,mv命令不但可以将文件进行移动,还可以同时修改文件的名称。
4)编辑脚本文件内容
linux中一个很强大的文本编辑工具为vim,vim命令既可以实现对文件的编辑,又可以创建文本文件。
对js2文件进行编辑
vim js2
自行任意编辑完js2文件后,输入“:wq”,保存退出。
5)创建用户
创建对脚本文件进行存取的用户,并为创建的用户设置密码
创建用户jsuser1、jsuser2
useradd jsuser1
useradd jsuser2
用户创建完毕后,应用passwd命令为jsuser1、jsuser2设置密码为jsuser1@123、jsuser2@123。
为用户jsuser1、jsuser2设置密码
passwd jsuser1
passwd jsuser2
6)修改用户信息
对于已经创建完毕的用户,在应用过程中,根据需要可以对其进行修改,使用到的命令为usermod -l,其中参数-l作用是指定新的用户名称。现在先将用户的jsuser1的名称修改为jsuser。
修改jsuser1的用户名
usermod -l jsuser jsuser1
7)设置脚本文件的权限
使用chmod命令修改脚本文件的权限,首先应用ls命令查看存取脚本目录jsdir下所有文件的属性信息。
以递归方式查看jsdir目录下所有文件的属性信息
ll -R
现在修改js3base文件权限,让其对所有用户都具备执行的权限,则最后的权限应为755。
设置js3base的权限为755,并查看设置结果
chmod 755 ./jsbase/js3base
ll ./jsbase/js3base
8)查找脚本文件
对脚本文件的查找可以通过find命令,也可以使用locate命令,locate命令其实是find -name的另一种写法,但是比find命令执行效率快得多。对于最新变动的文件,需要先通过updatedb命令进行更新,然后再使用locate命令进行查找。
更新查找数据库,并查找脚本存取目录下以2结尾的文件
yum install mlocate
updatedb
locate /cloudscape/jsdir/*2
数据文件管理
首先切换到系统的根目录cloudscape下,创建数据文件的存取目录data。
1)创建数据文件存取目录
使用cd切换路径,应用mkdir命令创建存取目录data。
切换到cloudscape目录下,创建存取目录data,并查询当前目录信息
cd /cloudscape
mkdir data
ls
2)复制重要文件到数据文件目录
使用cp命令可以复制文件到指定目录下。现有系统文件/etc/zlogin文件需要备份到数据目录下,应用的命令为:
复制文件到指定目录,并查看复制结果
touch /etc/zlogin
cp /etc/zlogin /cloudscape/data
ls data
3)将操作结果内容输出到指定文件
在日常操作过程中,会经常对操作的结果进行保存,使用重定向输出“>”命令和追加重定向输出“>>”命令能够对操作结果进行保存。二者的区别是:重定向输出“>”会覆盖掉保存文件中原有的内容,而追加输出重定向“>>”只会把内容添加在原有文件内容的后面。
创建两个文件file1、file2,把查询操作的内容以两种重定向的方式输出到这两个文件中。应用vim命令创建,并编辑同样的内容以方便验证
创建file1、file2,并编辑部分内容
cd data
vim file1
vim file2
现查询系统文件/etc/adjtime的内容,并以两种重定向的方式输出到file1、file2中,并应用cat命令查看file1、file2中的内容进行验证
查看/etc/adjtime内容,重定向到文件file1中,并查看file1内容
现在将查询的/etc/adjtime的内容以追加重定向的方式输出到文件file2中:
查看/etc/adjtime内容,追加重定向到文件file2中,并查看file2内容
cat /etc/adjtime >> file2
cat file2
结果显示,查看/etc/adjtime文件操作的内容经追加重定向后覆盖掉了file1中原有内容,而经过追加重定向后并没有覆盖掉file2中的内容,只是追加在了file2文件原有内容的后面。
4)创建链接文件
在日常应用文件的过程中,经常会遇见某个文件的所处的路径很长,不利于频繁访问。为了能够频繁的快速访问,可以通过创建链接文件的方式。链接文件分为硬链接和符号链接,硬链接要求源文件和链接文件必须在同一个文件系统上,当移动或删除原始文件时,硬链接不会被破坏,因为它所引用的是文件的物理数据而不是文件在文件结构中的位置。硬链接的文件不需要用户有访问原始文件的权限,也不会显示原始文件的位置;而符号链接则可以跨文件系统,如果删除一个符号链接,它指向的目标文件不受影响。如果目标文件被移动、重命名或者删除,任何指向它的符号链接仍然存在,但是它们将会指向一个不复存在的文件。
不论创建硬链接还是符号链接,使用的命令都是ln。ln不加任何参数时创建的是硬链接,创建符号链接需要-s参数的说明。
现在创建data目录中file1文件的符号链接为file,该file存放在系统根目录下以方便访问。
创建file1的符号链接file,并查看
ln -s data/file1 /file
ll /
5)创建用户
应用useradd命令创建用户duser1、duser2,并用passwd设置密码为duser1@123、duser2@123
创建duser1、duser2,并设置密码
useradd duser1
useradd duser2
passwd duser1
passwd duser2
6)改变文件的所有者
使用chown命令可以改变文件的所有者,通过ls命令查看chown命令更改之前的文件所有者,执行chown命令后,再用ls命令查看执行后的文件所有者以进行验证
改变文件file1的拥有者为duser1,并进行查看验证
cd data
ll
chown duser1 file1
ll
7)统计文件的字符
在管理数据文件时,经常会对文件内容的字数、行数、字节数进行统计,应用wc命令可以实现该功能,通过不同的参数可以实现不同的统计功能,该命令的主要参数如下:
• -w:统计字数,一个字被定义为由空格、制表符或换行字符分隔的字符串;
• -c: 统计字节数;
• -l:统计行数;
• -m:统计字符数。
现对文件file2进行统计,命令实现如下:
统计file2文件的字节数、行数、单词数
wc -c -l -w file1