Linux 常用命令

#Linux 常用命令

1. tar

-zxvf  解压.tar.gz 或.tar.xz文件
-jxvf  解压.tar.bz2
-jcv -f filename.tar.bz2 filename/folder 压缩文件或文件夹为bzip2格式
-xvJf filename.tar.xz 解压.tar.xz文件
常用功能:
[-j|-J|-z][cv][-f newfilename]filename/folder 打包与压缩(-j:tar.bzip2| -z:tar.gzip|-J:tar.xz)
[-j|-J|-z][tv][-f newfilename] 查看文件名(-j:tar.bzip2| -z:tar.gzip|-J:tar.xz)
[-j|-J|-z][xv][-f newfilename] [-c folder] 解压缩(-j:tar.bzip2| -z:tar.gzip|-J:tar.xz)

2.rm

-rf   递归删除内容 

3.dpkg

-i    安装deb包

4.ln

-s f1 f2 创建f1的一个符号连接文件f2

5.apt-get

apt-get purge softwarename 彻底卸载 softwarename 
apt-get install softwarename 安装 softwarename 

6.cp

cp  $(< file-list-file)  dst-dir   
复制file-list-file中列出的文件到dst-dir目录下

也可以通过xargs命令实现:xargs -a list mv -t dir
cat list.txt | xargs -J % cp % new_folder

cp -p :实现复制文档连同文档的属性,而不是预设属性

7.tee

ls | tee ls.log     即把标准输出保存到ls.log中,又显示在屏幕上
ls "*" 2>&1|tee ls.log  把标准输出和标准错误输出保存到ls.log,又显示在屏幕上

tee file     	//覆盖
tee -a file    	//追加
tee -        	//输出到标准输出两次
tee - -    		//输出到标准输出三次
tee file1 file2 -    //输出到标准输出两次,并写到那两个文件中

8.du

-h              //以k,m,g为单位,提高可读性
--max-depth=x   //显示指定x层数目录的大小,超过的予以忽略
-s              //显示总计大小

9.update alternative

update-alternatives --display editor   //可以看到我的机器上的所有可以用来被 editor 链接的命令。

update-alternatives --config editor    //选择一个editor作为默认editor执行

update-alternatives --auto editor   //将alternative 变为自动
	update-alternatives 在一般情况下是由postinst 和 prerm 这样的安装脚本自动调用的,所以alternative 的状态有两种:自动和手动。
	
update-alternatives --install   //添加一个alternative
格式:
update-alternatives --install gen link alt pri [--slave sgen slink salt] ...
gen [general name] -- 这是指一系列功能相似的程序的“公用”名字(包括绝对路径),比如 /usr/bin/editor。
link -- 这是指一个 alternative 在 /etc/alternative 中的名字,比如 editor。
alt [alternative] -- 顾名思义,这是指一个可选的程序所在的路径(包括绝对路径),比如 /usr/bin/vim。
pri 优先级  越高越好
--slave    如果需要从的 alternative,你可以用 加在后面。如果你在向一个已经存在的 alternative 组中添加新的 alternatives,该命令会把这些 alternatives 加入到这个已经存在的 alternative 组的列表中,并用新的可选命令作为新的命令;否则,将会建立一个新的自动的 alternative组。
例:
sudo update-alternatives --install /usr/bin/java java /usr/java/jdk1.7.0_03/bin/java 300

update-alternatives --remove name path    //删除错误的alternative

10.数据流重定向

10.1 标准输出:

1>(或>)   :以覆盖的方式将正确的数据输出到指定的文件或设备上;
1>>(或>>) :以累加的方式将正确的数据输出到指定的文件或设备上;

10.2 标准错误输出:

2>  :以覆盖的方式将错误的数据输出到指定的文件或设备上;
2>> :以累加的方式将错误的数据输出到指定的文件或设备上;

10.3 标准输入域:

<  :需要用键盘输入的信息有文件替代;
<< :结束输入;

eg:
[root@www ~]# cat >catfile<<"eof"
>This is a test.
>OK now stop
>eof(结束输入而不需[ctrl]+d)

10.4 2>&1理解

常用方式:command >file  2>&1 
2:代表错误输出
2>:代表将错误输出重定向到某个文件
1:代表标准输出
2>1:代表将错误输出信息重定向到1文件
2>&1:代表将错误输出信息重定向到标准输出文件
为什么2>&1必须放在后面?
	首先是command > file将标准输出重定向到file中, 2>&1 是标准错误拷贝了标准输出的行为,也就是同样被重定向到file中,最终结果就是标准输出和错误都被重定向到file中。 

10.5 命令执行的判断依据:;,&&,||

cmd;cmd    
不考虑命令相关性的连续命令执行

$?         
命令回传码,命令执行完毕且正确执行返回$?=0;若执行完毕且为错误,则返回$?≠0。

cmd1&&cmd2 
若cmd1执行完毕且正确执行,则开始执行cmd2;若cmd1执行完毕且为错误,则不执行cmd2。

cmd1||cmd2 
若cmd1执行完毕且正确执行,则不执行cmd2;若cmd1执行完毕且为错误,则开始执行cmd2。

eg:
ls /tmp/vbirding&& echo "exist"||echo "not exit"
ls /tmp/vbirding|| echo "exist"&&echo "not exit"
判断哪个才是正确的做法呢?

11 linux 访问局域网 windows共享目录方法

1.首先在mnt夹下建立共享文件夹,如share。
2.加载Windows系统的共享文件夹
在Linux命令行下访问Windows共享文件夹的命令是:
mount -t cifs -o username=windowsusername //windows machine/sharefiles /mnt/localfolder
如:mount -t cifs -o username=guest,password=//192.168.1.102/mtv /mnt/share
其中:
windowsusername : Windows用户名
windows machine :Windows机器名
sharefiles :Windows共享文件夹名
然后就可以在 /mnt/localfolder 下访问Windows内容。
另外使用如下命令也可以在命令行环境查看Windows机器上的共享文件目录。
  [root@localhost root]# smbclient -L //192.168.1.100 
注:使用的是大写的L。
连接成功以后会显示WIndows机器上的共享文件目录的情况,然后继续mount共享文件夹就可以了。
3.取消访问命令:umount /mnt/localfolder

12 ubuntu 版本查看命令

cat /etc/issue
cat /proc/version
uname -a
cat /etc/lsb-release
lsb-release

13 file

file命令用来探测给定文件的类型。file命令对文件的检查分为文件系统、魔法幻数检查和语言检查3个过程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值