linux 常用命令笔记

linux zip/unzip命令
命令名: zip

 

功能说明:压缩文件。

语  法:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工 作目录>][-ll][-n <字 尾字符串>][-t <日 期时间>][-<压 缩效率>][压 缩文件][文件...][-i <范本样式>][-x <范本样式>]

补充说明:zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具 有".zip"扩展名 的压缩文件。

参  数:

-A 调 整可执行的自动解压缩文件。

-b<工作目录> 指 定暂时存放文件的目录。

-c 替 每个被压缩的文件加上注释。

-d 从 压缩文件内删除指定的文件。

-D 压 缩文件内不建立目录名称。

-f 此 参数的效果和指定"-u"参 数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中。

-F 尝 试修复已损坏的压缩文件。

-g 将 文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。

-h 在 线帮助。

-i<范本样式> 只 压缩符合条件的文件。

-j 只 保存文件名称及其内容,而不存放任何目录名称。

-J 删 除压缩文件前面不必要的数据。

-k 使 用MS-DOS兼容格 式的文件名称。

-l 压 缩文件时,把LF字符 置换成LF+CR字 符。

-ll 压 缩文件时,把LF+CR字 符置换成LF字符。

-L 显 示版权信息。

-m 将 文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。

-n<字尾字符串> 不 压缩具有特定字尾字符串的文件。

-o 以 压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。

-q 不显 示指令执行过程。

-r 递 归处理,将指定目录下的所有文件和子目录一并处理。

-S 包 含系统和隐藏文件。

-t<日期时间> 把 压缩文件的日期设成指定的日期。

-T 检 查备份文件内的每个文件是否正确无误。

-u 更 换较新的文件到压缩文件内。

-v 显 示指令执行过程或显示版本信息。

-V 保 存VMS操作系统的文 件属性。

-w 在 文件名称里假如版本编号,本参数仅在VMS操 作系统下有效。

-x<范本样式> 压 缩时排除符合条件的文件。

-X 不 保存额外的文件属性。

-y 直 接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之 类的系统下有效。

-z 替 压缩文件加上注释。

-$ 保 存第一个被压缩文件所在磁盘的卷册名称。

-<压缩效率> 压 缩效率是一个介于1-9的 数值。

 

例子

 

例1. 压缩test.MYI

 

[root@mysql test]# zip test1.zip test.MYI

adding: test.MYI (deflated 42%)

[root@mysql test]#ll

-rw-r--r-- 1 root root 1033755 09-24 10:03 test1.zip

 

压缩率为8的

[root@mysql test]# zip test2.zip -8 test.MYI

adding: test.MYI (deflated 42%)

[root@mysql test]#ll

-rw-r--r-- 1 root root 1033451 09-24 10:03 test2.zip

 

例2. 将当前目录下的所有文件和文件夹全部压缩成test.zip文件,-r表示递归压缩子目录下所有文件

[root@mysql test]# zip -r test.zip ./*

 

打包目录

[root@mysql test]# zip test2.zip test2/*

 

 

例3. 删除压缩文件test1.zip中test.MYI文件

[root@mysql test]# zip -d test1.zip test.MYI

 

删除打包文件目录下的文件

 

[root@mysql test]# zip -d test2.zip test2/ln.log

deleting: tests/ln.log

 

例4. 向压缩文件中test1.zip中添加test. MYI文件

[root@mysql test]# zip -m test1.zip test. MYI

 

例5. 压缩文件时排除某个文件

[root@mysql test]# zip test3.zip tests/* -x tests/ln.log

 

 

命令名: unzip

功 能说明:解压缩zip文 件

语  法:unzip [-cflptuvz][-agCjLMnoqsVX][-P <密 码>][.zip文 件][文件][-d <目录>][-x <文件>] 或 unzip [-Z]

补充说明:unzip为.zip压缩文件的解压缩程序。

参  数:

-c 将 解压缩的结果显示到屏幕上,并对字符做适当的转换。

-f 更 新现有的文件。

-l 显 示压缩文件内所包含的文件。

-p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任 何的转换。

-t 检 查压缩文件是否正确。,但不解压。

-u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中 的其他文件解压缩到目录中。

-v 执 行是时显示详细的信息。或查看压缩文件目录,但不解压。

-z 仅 显示压缩文件的备注文字。

-a 对 文本文件进行必要的字符转换。

-b 不 要对文本文件进行字符转换。

-C 压 缩文件中的文件名称区分大小写。

-j 不 处理压缩文件中原有的目录路径。

-L 将 压缩文件中的全部文件名改为小写。

-M 将 输出结果送到more程 序处理。

-n 解 压缩时不要覆盖原有的文件。

-o 不 必先询问用户,unzip执 行后覆盖原有文件。

-P<密码> 使 用zip的密码选项。

-q 执 行时不显示任何信息。

-s 将 文件名中的空白字符转换为底线字符。

-V 保 留VMS的文件版本信 息。

-X 解 压缩时同时回存文件原来的UID/GID。

[.zip文件] 指定.zip压缩文件。

[文件] 指定 要处理.zip压缩文 件中的哪些文件。

-d<目录> 指 定文件解压缩后所要存储的目录。

-x<文件> 指 定不要处理.zip压 缩文件中的哪些文件。

-Z unzip -Z等 于执行zipinfo指 令。

 

 

例1:将压缩文件text.zip在当前目录下解压缩。

 

[root@mysql test]# unzip test.zip

 

例2:将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,要求unzip命令不覆盖原先的文件。

 

[root@mysql test]# unzip -n test.zip -d /tmp

 

例3:查看压缩文件目录,但不解压。

 

[root@mysql test]# unzip -v test.zip

 

例4:将压缩文件test.zip在指定目录tmp下解压缩,如果已有相同的文件存在,要求unzip命令覆盖原先的文件。

 

[root@mysql test]# unzip -o test.zip -d tmp/

 

 

使用

unzip "*.zip"

ls *.zip | xargs -n1 unzip

解压当前目录下的所有zip文件


linux 重命名

linux下重命名文件或文件夹的命令mv既可以重命名,又可以移动文件或文件夹.

例子:将目录A重命名为B

mv A B


linux 防火墙配置文件

vim /etc/sysconfig/iptables

查找mysql 进程

ps aux | grep mysql

 

linux 伪静态配置

rewrite ^/show-([0-9]+)-([0-9]+)\.html$ /index.php?action=show&id=$1&page=$2;
rewrite ^/category-([0-9]+)-([0-9]+)\.html$ /index.php?action=index&cid=$1&page=$2;
rewrite ^/archives-([0-9]+)-([0-9]+)\.html$ /index.php?action=index&setdate=$1&page=$2;
rewrite ^/(archives|search|reg|login|index|links)\.html$ /index.php?action=$1;
rewrite ^/(comments|tagslist|trackbacks|index)-([0-9]+)\.html$ /index.php?action=$1&page=$2;
if ($host != 'www.jbxue.com' ) {
rewrite ^/(.*)$ http://www.jbxue.com/$1 permanent;
}
error_page 404 http://www.jbxue.com/;


mysql 数据库命令 tpsidinglicom

mysqldump -uroot -p123 test > test.dump // 导出数据库

mysql [database name] < [backup file name] // 回复数据库

mysqldump --all-databases > test.dump // 备份所有数据库

mysqldump --no-data --databases mydatabase1 mydatabase2 mydatabase3 > test.dump // 备份数据库结构


删除 .user.ini 文件

chattr -i .user.ini


6>查看当前目录下user目录的大小,并不想看其他目录以及其子目录:

du -sh user

-s表示总结的意思,即只列出一个总结的值

du -h --max-depth=0 user

--max-depth=n表示只深入到第n层目录,此处设置为0,即表示不深入到子目录。

7>列出user目录及其子目录下所有目录和文件的大小:

du -ah user

-a表示包括目录和文件


8>移动men目录下的所有文件到当前目录下面
mv /usr/men/* .

9>将文件ex3改名为new1
mv ex3 new1

--backup=<备份模式>:若需覆盖文件,则覆盖前先行备份;
-b:当文件存在时,覆盖前,为其创建一个备份;
-f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录;
-i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。
--strip-trailing-slashes:删除源文件中的斜杠“/”;
-S<后缀>:为备份文件指定后缀,而不使用默认的后缀;
--target-directory=<目录>:指定源文件要移动到目标目录;
-u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。

10>创建文件
touch demo1.txt

11> 删除目录
rmdir test

12> 创建目录
mkdir demo

13> cp 复制文件命令用法
.将文件file1复制成文件file2
cp file1 file2

.采用交互方式将文件file1复制成文件file2
cp -i file1 file2

.将文件file1复制成file2,因为目的文件已经存在,所以指定使用强制复制的模式
cp -f file1 file2

.将目录dir1复制成目录dir2
cp -R file1 file2

.同时将文件file1、file2、file3与目录dir1复制到dir2
   cp -R file1 file2 file3 dir1 dir2

.复制时保留文件属性
cp -p a.txt tmp/

.复制时保留文件的目录结构
cp -P /var/tmp/a.txt ./temp/

.复制时产生备份文件
cp -b a.txt tmp/

.复制时产生备份文件,尾标 ~1~格式
cp -b -V t a.txt /tmp

.指定备份文件尾标
cp -b -S _bak a.txt /tmp

 


14> tar 命令用法

语法:tar [主选项+辅选项] 文件或者目录

使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。

主选项:

c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。相当于打包。

x 从档案文件中释放文件。相当于拆包。

t 列出档案文件的内容,查看已经备份了哪些文件。

特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。

辅助选项:

-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩或解压? 一般格式为xx.tar.gz或xx. tgz

-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩或解压?一般格式为xx.tar.bz2

-v :压缩的过程中显示文件!这个常用

-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加其他参数!

-p :使用原文件的原来属性(属性不会依据使用者而变)

--exclude FILE:在压缩的过程中,不要将 FILE 打包!

范例:

范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar

[root@linux ~]# tar -cvf /tmp/etc.tar /etc    <==仅打包,不压缩!

[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc  <==打包后,以 gzip 压缩

[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc  <==打包后,以 bzip2 压缩

# 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。

# 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~

# 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~

# 上述指令在执行的时候,会显示一个警告讯息:

# 『tar: Removing leading `/" from member names』那是关於绝对路径的特殊设定。

范例二:查阅上述 /tmp/etc.tar.gz 文件内有哪些文件?

[root@linux ~]# tar -ztvf /tmp/etc.tar.gz

# 由於我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时,

# 就得要加上 z 这个参数了!这很重要的!


范例三:将 /tmp/etc.tar.gz 文件解压缩在 /usr/local/src 底下

[root@linux ~]# cd /usr/local/src

[root@linux src]# tar -zxvf /tmp/etc.tar.gz

# 在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说

# 我先将工作目录变换到 /usr/local/src 底下,并且解开 /tmp/etc.tar.gz

# 则解开的目录会在 /usr/local/src/etc ,另外,如果您进入 /usr/local/src/etc

# 则会发现,该目录下的文件属性与 /etc/ 可能会有所不同喔!


范例四:在 /tmp 底下,我只想要将 /tmp/etc.tar.gz 内的 etc/passwd 解开而已

[root@linux ~]# cd /tmp

[root@linux tmp]# tar -zxvf /tmp/etc.tar.gz etc/passwd

# 我可以透过 tar -ztvf 来查阅 tarfile 内的文件名称,如果单只要一个文件,

# 就可以透过这个方式来下达!注意到! etc.tar.gz 内的根目录 / 是被拿掉了!

范例五:我要备份 /home, /etc ,但不要 /home/dmtsai

[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

 

// 查看历史命令
history || !(u,...)


// 切换用户
su - // 切换root用户

 

// 显示当前用户信息
id

// 修改当前用户密码
passwd


// 查看后台运行的程序
firefox &
bg num // 后台程序
fg num // 前台程序


// 查看时间
date +%Y-%m-%d

// 查看系统运行时间
uptime

// 关机
poweroff

// 重启
reboot

// 立即关机 立即重启
shutdown -h shutdown -r

// 归档、压缩文件
tar -cvf 归档
tar -xvf 释放归档
tar -cvzf 归档并压缩

// 查找文件
find . -name *filename*
find / -name filename

 

netstat -nap|grep node

kill -9 进程id


// 开启node 守护进程
node index.js &
disown

 


查看文件夹大小
du -h --max-depth=0 ./www.37libao.com

 

posted @ 2017-09-29 10:50  gudyu  阅读(142)  评论(0编辑  收藏  举报