linux命令:常用shell命令及应用


http://blog.csdn.net/pipisorry/article/details/44681081

小技巧

命令行中直接查看linux shell命令及解释

man command

Linux下更好用的帮助命令—cheat

#pip install cheat

$cheat tar

[Linux下更好用的帮助命令—cheat]

命令行中复制、粘贴

Ubuntu终端窗口中,复制粘贴的快捷键需要加上 shift

复制:ctrl+shift+c 粘贴:ctrl+shift+v

bash特殊参数

command !$ 执行后!$把上个命令最后的参数作为输入

!! 代表上一条命令

命令中执行某个命令

$(hostname)

可以这样echo $(hostname) > 1.txt

还可以通过``来执行命令

sed "s/oldstring/newstring/g" `grep oldstring -rl yourdir`

sudo shell 内置命令

shell 是一个交互式的应用程序,在执行外部命令时通过 fork 来创建一个子进程,再通过 exec 来加载外部命令的程序来执行,但是如果一个命令是 shell 内置命令,那么只能直接由 shell 来运行。sudo 的意思是,以别的用户(如root)的权限来 fork 一个进程,加载程序并运行,因此 sudo 后面不能跟 shell 的内置命令,如:$ sudo cd /sys/kernel/debugfs
sudo: cd: command not found
在这种情况,我们又没有 root 账户的密码,我们怎样执行该命令呢?有种办法就是使用 sudo 获得root shell 的权限,然后在root shell 中执行该命令。进入root shell 很简单,输入sudo bash 确认本用户的密码即可,此时你会发现命令提示符显示当前是 root。一旦获得root shell,你可以执行任何命令而不需要在每条命令前输入sudo了。

皮皮Blog

shell内置命令

[15 Useful Bash Shell Built-in Commands (With Examples)]

[cd 命令:一个内置命令]


目录和文件操作命令

[linux文件及目录管理]

[Linux文件格式化与相关处理及sed工具 ]

linux vi vim命令、快捷键

[linux vi vim命令、快捷键]




linux解压、压缩命令tar

z是针对 gzip,j是针对 bzip2,J针对xz。注意.tgz是.tar.gz的缩写

压 缩(可同时多个文件或目录):

tar -zcv -f filename.tar.gz fname1 fname2 或者dirname1 dirname2

tar -jcv -f filename.tar.bz2 fname1 fname2 或者dirname1 dirname2
查 询:tar -jtv -f filename.tar.bz2

Note: 如果for循环压缩多个目录,使用

DIRS=$(echo ~/SysReinstall/ ~/files/DESKTOP/   #不能加"",否则找不到路径

for DIR in $DIR

do
    cd
    tar -czf $(basename $DIR).tar.gz $DIR
done

解压缩:

tar -zxv -f filename.tar.bz2 -C 欲解压缩的目录

tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录

tar -xJf extra-cmake-modules_1.4.0.orig.tar.xz

压缩解压.zip,  .7z文件

sudo apt-get install p7zip p7zip-full p7zip-rar

# 7z a yajiu.7z yajiu
这条命令是将文件夹yajiu压缩成一个7z包
# 7z x yajiu.7z
这条命令是将yajiu.7z中的所有文件解压出来,x是解压到压缩包命名的目录下
# 7z e yajiu.7z
这条命令是将yajiu.7z中的所有文件解压出来,e是解压到当前路径,就是压缩包里面的东西都抽取到当前目录下(一般不会用这个命令)

[Linux 下压缩与解压.zip和.rar及.7z文件 ]

linux下压缩\解压rar文件

解压rar文件好像只能用unrar,用7z解压出来只有0kb。压缩也用rar吧

$sudo apt-get install rar

$sudo apt-get install unrar

安装后可以在命令行或者文件管理器中打开和解压rar文件。

压缩$rar a ***.rar ***

解压unrar ***.rar

linux下解压windows下的压缩文件时出现文件名乱码

主要原因是,在windows下压缩文件时,是以系统的默认编码(gbk,gb18030)来压缩,zip文件并没有声明编码的格式,因此,linux下解压缩时,也会使用系统默认的格式(utf-8)解压缩,编码格式不同,自然会出现乱码。
解决办法,linux下解压zip文件时声明一下编码即可。
比如对于某个windows下用zip压缩的文件 xx.zip,解压时,可以利用
$ unzip -O CP936 xx.zip
实际上,CP936用GBK, GB18030也是可以的。
Note:一般rar文件在linux解压时并不会出现文件名乱码的情况,主要原因是rar文件头声明了压缩时的编码。所以大家以后为了方便,尽量还是用rar方式压缩吧。

bash命令批量处理压缩文件

#!/bin/bash
for i in $(ls | grep 'zip')
do
    unzip -O CP936 ${i}
done

for i in $(ls | grep 'rar')
do
    unrar ${i}

done



linux下载命令wget

wget linkurl -P /usr/local




{nm, 写的文章怎么只剩一半了,真给跪了。。。。。。}