Linux系统学习——指令二
- sed 指令
- perl 指令
- rpm 指令
- rz 和 sz 指令
- 查看文件大小及压缩文件指令
- 使用`tar`命令:
- 使用`zip`命令:
- 注意事项:
 
 
- 解压文件指令
sed 指令
使用sed命令:sed -i 's/旧内容/新内容/g' 文件名,这将会在文件中查找并替换所有的旧内容为新内容
sed -i 's/"parameters": "aa,bb"/"parameters": "bb,aa"/' /usr/local/etc/a.txt
-  -i选项表示直接修改文件内容,而不是输出到终端。
-  s/old/new/是sed命令的替换语法,其中old表示要被替换的字符串,new表示替换后的字符串。
-  /usr/local/etc/a.txt是要修改的文件路径。
使用以上命令,sed会在指定文件中找到第一个匹配的字符串并进行替换。如果要替换所有匹配的字符串,可以使用全局替换标志g,例如:
sed -i 's/"parameters": "aa,bb"/"parameters": "bb,aa"/g' /usr/local/etc/a.txt
perl 指令
perl -pi -e 's/旧内容/新内容/g' 文件名
示例:
perl -pi -e 's/"parameters": "aa,bb"/"parameters": "bb,aa"/g' /usr/local/etc/a.txt
rpm 指令
rpm -ivh --nodeps --force rpm-packagerpm -ivh --nodeps --force aaabbbccc.rpmrpm -qpl xxx.rpmrpm -ivh --nodeps --force --ignorearch XXX.rpm
rz 和 sz 指令
rz 命令(Receive ZMODEM),使用 ZMODEM 协议,将本地文件批量上传到远程 Linux/Unix 服务器,注意不能上传文件夹。
rz [OPTIONS]常用:
以二进制,并对控制字符进行转义,替换已存在的同名文件。rz -bye
-+, --append将文件内容追加到已存在的同名文件
-a, --ascii以文本方式传输
-b, --binary以二进制方式传输,推荐使用
--delay-startup N等待 N 秒
-e, --escape对所有控制字符转义,建议使用
-E, --rename已存在同名文件则重命名新上传的文件,以点和数字作为后缀
-p, --protect对 ZMODEM 协议有效,如果目标文件已存在则跳过
-q, --quiet安静执行,不输出提示信息
-v, --verbose输出传输过程中的提示信息
-y, --overwrite存在同名文件则替换
-X, --xmodem使用 XMODEM 协议
--ymodem使用 YMODEM 协议
-Z, --zmodem使用 ZMODEM 协议
--version显示版本信息
--h, --help显示帮助信息
sz 命令(Send ZMODEM)通过 ZMODEM 协议,可将多个文件从远程服务器下载到本地。
sz [OPTIONS] FILESsz 不用选项-bye,使用 XShell,也可以正确传输文本文件与二进制文件。
sz file1 file2 file3
查看文件大小及压缩文件指令
在Linux系统中,可以使用多种命令来查看文件大小、数据库大小,并把文件压缩成压缩包。以下是一些常用的命令和它们的用法:
-  查看文件大小: -  使用 ls命令查看文件或目录的大小:ls -lh 文件名 ls -lah 文件名这里的 -l选项表示长列表格式,-h选项表示以易读的格式显示大小(如KB、MB)。
-  使用 du(disk usage)命令查看文件或目录占用的磁盘空间:du -sh 目录或文件-s表示汇总(total)大小,-h表示易读格式。
 
-  
-  查看数据库大小: -  对于MySQL数据库,可以使用以下命令: mysql -u username -p -e "SELECT table_schema AS 'Database', ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS 'Size (MB)' FROM information_schema.TABLES GROUP BY table_schema;"这将列出所有数据库的大小(以MB为单位)。输入密码后执行。 
-  对于PostgreSQL数据库,可以使用: sudo -u postgres pg_dump -s your_database_name | wc -c这将输出数据库大小的近似值(以字节为单位)。 -s选项表示只导出模式(表结构等),不导出数据。
 
-  
-  把文件压缩成压缩包: -  使用 tar命令创建压缩包:tar -czvf 压缩包名.tar.gz 要压缩的文件或目录其中 -c表示创建压缩包,-z表示用gzip压缩,-v表示在压缩时显示进度,-f指定压缩包的文件名。
-  如果想压缩成一个 .zip文件,可以使用zip命令:zip -r 压缩包名.zip 要压缩的文件或目录-r表示递归地压缩目录。
-  如果系统中没有安装 zip,可以通过包管理器安装,例如使用apt(Debian/Ubuntu):sudo apt-get install zip
 
-  
在Linux中,可以使用tar命令或zip命令将多个文件压缩成一个压缩包。以下是具体的步骤和示例:
使用tar命令:
 
-  打开终端:首先,需要打开Linux系统的终端。 
-  定位到文件所在目录:使用 cd命令定位到包含想要压缩的文件的目录。cd /path/to/directory
-  使用tar命令压缩文件: -  要将当前目录下的所有文件和子目录压缩成一个名为 archive.tar.gz的gzip压缩包,可以使用以下命令:tar -czvf archive.tar.gz *这里的 *代表了当前目录下的所有文件和目录。
-  如果只想压缩特定文件或目录,可以将 *替换为具体的文件或目录名,例如:tar -czvf archive.tar.gz file1.txt file2.txt directory1/
 
-  
tar命令在Linux中用于打包和压缩文件。-jxvf是tar命令的一系列选项,每个选项都有一个特定的功能。下面是每个选项的详细说明:
-  -j:这个选项告诉tar命令使用bzip2程序进行压缩或解压缩。bzip2是一种压缩算法,通常提供比gzip更好的压缩比率,但压缩和解压缩速度较慢。
-  -x:这是“extract”(提取)的缩写,表示从压缩包中提取文件。当想要解压缩一个tar压缩文件时,需要使用这个选项。
-  -v:这是“verbose”(详细)的缩写,表示在处理文件时,tar命令将显示详细的信息。使用这个选项时,tar会列出它正在提取的文件名,这有助于了解当前的进度。
-  -f:这是“file”(文件)的缩写,它后面跟着的是要操作的压缩文件名。使用-f选项可以指定压缩或解压缩的文件。
将这些选项组合起来,tar -jxvf命令的意思是:使用bzip2算法以详细模式从指定的压缩文件中提取文件。例如,如果有一个名为archive.tar.bz2的压缩文件,可以使用以下命令来解压缩它:
tar -jxvf archive.tar.bz2
这将列出压缩文件中所有文件的名称,并将它们解压缩到当前目录。
请注意,tar命令还有许多其他的选项和用法,可以根据需要进行不同的操作,如创建压缩包、查看压缩包内容等。
使用zip命令:
 
-  打开终端。 
-  定位到文件所在目录。 
-  使用zip命令压缩文件: -  要将当前目录下的所有文件和子目录压缩成一个名为 archive.zip的zip压缩包,可以使用以下命令:zip -r archive.zip *
-  如果只想压缩特定的文件或目录,可以将 *替换为具体的文件或目录名,例如:zip -r archive.zip file1.txt file2.txt directory1/
 
-  
注意事项:
- 需要确保有足够的权限来读取要压缩的文件和写入压缩包。
- 如果使用的是图形界面,也可以使用文件管理器的压缩功能来创建压缩包。
- 如果系统中没有安装zip程序,可以通过包管理器安装。例如,在Debian或Ubuntu上,可以使用以下命令安装:sudo apt-get update sudo apt-get install zip
使用这些命令,可以轻松地将多个文件或目录压缩成一个压缩包,便于存储或传输。
解压文件指令
在Linux中,解压压缩包可以使用多种不同的命令,具体取决于压缩包的格式。以下是一些常见压缩格式及其对应的Linux解压指令:
-  .tar (Tape Archive): - 压缩包没有被进一步压缩,仅打包。
- 解压命令:tar -xvf 压缩包名.tar- -x表示提取(extract)。
- -v表示详细模式(verbose),显示正在解压的文件列表。
- -f表示后面跟着的是要操作的文件名。
 
 
-  .tar.gz 或 .tgz (Gzip Compressed): - 使用gzip进行压缩的tar包。
- 解压命令:tar -xzvf 压缩包名.tar.gz- -z替换了- -j,表示使用gzip进行解压缩。
 
 
-  .tar.bz2 (Bzip2 Compressed): - 使用bzip2进行压缩的tar包。
- 解压命令:tar -xjvf 压缩包名.tar.bz2- -j表示使用bzip2进行解压缩。
 
 
-  .tar.xz (Lzip Compressed): - 使用xz进行压缩的tar包。
- 解压命令:tar -xJvf 压缩包名.tar.xz- -J表示使用xz进行解压缩。
 
 
-  .zip: - 使用zip算法压缩的文件。
- 解压命令:
 如果系统中没有unzip 压缩包名.zipunzip命令,可以通过包管理器安装,例如在Debian/Ubuntu上:sudo apt-get install unzip
 
-  .rar: - 使用RAR压缩算法的文件。
- 解压命令:
 如果系统中没有unrar x 压缩包名.rarunrar命令,可以通过包管理器安装,例如在Debian/Ubuntu上:sudo apt-get install unrar
 
-  .7z: - 使用7z格式的压缩文件。
- 解压命令:
 如果系统中没有7z x 压缩包名.7z7z命令,可以通过包管理器安装,例如在Debian/Ubuntu上:sudo apt-get install p7zip-full
 
使用这些命令时,只需将压缩包名替换为要解压的文件的实际文件名。这些命令将解压压缩包内容到当前目录,除非在命令中指定了不同的目标目录。