linux常用命令

其他快捷操作:

1.man:q为退出查看模式

2.ctrl--为缩小终端页面,ctrl++为放大终端页面。

3.ctrl+shift+c 拷贝,ctrl+shift+v 粘贴。

 

 

1、在文件系统中跳转命令

.表示当前目录,..表示根目录,/表示根目录;按tab健能够快捷补全。

pwd:查看当前所在目录。

cd -:可直接跳回到前一个目录。

cd /:可跳回到根目录。

 

2、对文件和文件目录的操作

1.copy:cp file file2;cp -r dir dir2(若为目录则要加-r)

2.move:mv file .. ;mv fir dir/(把目录移到dir文件夹下)

3.rename:mv file file2;mv dir dir2(注意,若dir2存在,则为移动操作?)

4.rmove:rm file;rm -r dir

5.创建文件:touch a.txt;>a.txt (创建隐藏文件,以.开头的文件就是隐藏文件)

6.创建目录:mkdir dir(隐藏目录创建同上)

7.查看文件:cat file ;less file

8.查看文件类型:file a.txt

9.通配符的使用:*匹配一个或多个字符,例如a* 可匹配a.txt或者aaaa.html等等,用echo a*(echo为打印命令)可查看任何匹配的文件or文件夹

10.压缩和解压缩:分别有三种,zip,tar.gz,tar .bz2

zip:zip file为压缩,unzip file 为解压缩。

tar.gz : tar zxvf file为解压缩,tar zcvf file为压缩。

tar.bz2: tra jxvf file为解压缩,tar jcvf file 为压缩。

 

3、重定向

1.三个重要文件,它们在系统中是一直打开的。

标准输入文件(stdin,文件描述符为0),标准输出文件(stdout,1),标准错误文件(stderr,2)

默认情况下,键盘输入的数据会保存到stdin中, 若把数据保存到stdout和stderr中,数据不会保存到硬盘上,而是会直接显示在屏幕上。

2.重定向的方式

输出重定向(redirect stdout ): > 。例如:cat a.txt > file(把a.txt文件的输出内容保存到file中,此时它会直接覆盖掉file中原有的数据);cat a.txt >> file或者cat a.txt file > file(向file追加a.txt中的内容)

标准错误重定向:2> 。例如:cat fakeFIle(一个不存在的文件) 2>file (由于fakeFIle为不存在的文件,所以会输出错误信息,然后这个错误信息会被重定向到file文件)

 输入重定向:<。用法与输出一样

3.管道线

就是在命令后面再添加命令的操作。 | 为管道符,管道符后接需要的操作命令。格式为:|command|command|command...例如,cat file|uniq uniq为cat file的前提下,找出里面不重复的字符串。

 

4、权限

1.三种权限:读(r)、写(w)、执行(x)

2.权限的对象:owner,group,world(world为除了owner和group外的人)

3.文件模式

第一位:- 表示文件;l 表示符号链接;d 表示目录

1:表示链接的数量

第一个peter:表示owner的名字

第二个peter:表示group的名字

0:文件大小(byte)

rw-rw-r--:文件模式,可分为三组,rw-(第一组,表owner的文件权限),第二组为group,第三组为world。

4.文件与目录在三种权限下的区别

读:文件和目录一致

写:对目录而言,w权限可以进行增加/删除/重命名里面的文件操作;对文件而言,可以执行写入/删除/重命名操作。

 执行:对目录而言,x权限可以进入这个目录;对文件而言,x权限可以执行这个文件(例如.sh脚本文件,或者.c程序)。

5.chmod(chang mode)

命令格式为:chmod xxx file (还有其他更便捷的方式)

xxx的说明:分别对应三组的权限,每一个组对应一个八进制数,0代表没有,1代表有,例如110就是有读和写权限,再把110变成八进制-->6

6.chmown(change owner)

 

5、进程

1.获取进程号

ps aux(后面可接管道符)|less 或者 |grep xx(xx为要查找的某个进程名称)等

2.杀掉进程 kill 进程号(pid)

 

3.后台执行

在终端中直接敲某个可执行程序,例如firefox,则终端会进入被firefox的进程占用

后台执行法1:而 firefox & 再回车能使它在后台执行,当前终端仍可用。

后台执行法2:若已经敲了firefox,则可在终端敲crtl+c来结束该线程,再使用bg来使其后台执行。相应的,回到前台为fg。

 

4.kill

不同参数有不同的意义。

kill +9:杀死进程,它没有办法做清理工作,或保存成果;

kill +2 :等于ctrl + c,终止程序;

若桌面系统死机了,则可以按ctrl+alt+f1,到linux中的第一个工作台(linux同时运行七个工作台),再输入kill 命令,杀死导致桌面瘫痪的进程,ctrl+alt+f7可回到桌面。

shell程序的退出(例如终端):ctrl+d = exit 

 

6、查找

1.locate(deepin好像没有)

在系统全局范围内定位文件

它不是直接在文件系统里搜索,而是在一个数据库里读数据。有一个updatedb(好像deepin也没有)的命令每天执行一次,将文件系统里对应的文件信息存到数据库中,但因为每天执行一次,所以会找不到新创建的文件。

 

2、find

在一个目录范围内定位文件

例如:在一个文件夹mydir内 ,find .可看到所有文件; find .|grep .txt可看到所有txt文件;find . -type f 可查看所有文件;find .type d  可查看所有目录;find  . -type f -exec  xxx  '{}' ';'(此为结束符,xxx为任意的命令) 可对找出来的文件进行进一步的操作。例如,find .  -type -exec ls -l '{}' ';'('{}'代表刚才找出来的文件的文件名)

 

3、grep

字符串查找

 

7、网络操作

1.远程操作

ssh协议(secure shell ):安全外壳协议,使用非对称加密的网络传输协议,最常见的用途是用来远程登录系统。

见wiki:https://zh.wikipedia.org/wiki/Secure_Shell

命令:ssh 用户名@域名 -- 连接服务器;ctrl+d退出服务器;ssh-keygen -- 查看自己的私钥和公钥;ssh-copy-id 用户名@域名 上传公钥到服务器;

tmux:一款在不小心退出时保存现场的软件,例如服务器上使用vim,不小心按ctrl+d退出了,或者网络断掉了,只要进去的使用使用tmux,断掉后再进去使用 tmux -a 即可找到保存的现场;

 

 

2.数据传输

rsync(remote synchronization):用于本地和服务器数据同步

本地文件上传服务器:rsync -r mydir(这里后面不可有/,否则忽略掉mydir,而把所有数据上传上去) 域名: (:后可接路径,也可不接,若不接则默认放到/home/lianup(假设服务器上用户为lianup)上)

服务器文件上传本地:rsync -r 域名 :mydir .(基本就是命令不变,名字位置交换一下)

本地新增文件同步到服务器: rsync -a mydir/(/ 不可少)  域名:mydir/(/不可少)

本地新增和删除文件同步到服务器:rsync -a --delete mydir/(/ 不可少)  域名:mydir/(/不可少)

只查看本地新增和删除文件的信息,不同步(用于在同步前确认没有误删之类的):rsync -a --delete mydir/(/ 不可少)  域名:mydir/(/不可少) --dry run

 

8、软件安装

1.手动安装 

1)下载后解压缩

2)解压缩后移动到一个喜欢的地方

3)找到可执行程序,把它放进环境变量里,变成系统命令:echo $PATH ,会出现很多由冒号分割的目录,只要把可执行程序放到任何一个目录中,就可以变成系统命令了。

4)创建符号链接:若不想做3),则可以用 ln -s 可执行文件所在地(绝对路径or相对) ~/bin/name(name为自己取的名字)

 

2.下载源程序安装

1)解压缩;

2)进入软件的 configure;(或许还要安装依赖)

3)make;4)sudo make install

 

2.deb 包

debin包包括:程序本身、配置文件、安装位置、依赖关系

1)安装deb包:sudo dpkg -i 包名

 

3.从apt-get 仓库安装(自动处理依赖问题)

安装软件:sudo apt-get install 软件名

删除软件:sudo apt-get remove(若想连配置文件也删掉则换成purge) 软件名

不清楚精确的包名:sudo apt-cache search 包名的片段(可查看所有相关的资源)

查看具体可安装的软件:sudo apt-get instal 软件名 按两下tab键

 

9、shell脚本编程

1.指定解析器

我们用的脚本是bash,故在脚本文件中写入#!/usr/bin/env bash

2.语句即命令

在命令行中执行的命令,放到脚本里就是语句。

 

3.位置参数

$# 代表有多少个参数;$0代表第一个参数

执行:

 

4.脚本不在当前shell执行

脚本中的语句不是在当前shell执行的,脚本中的语句会在另一个shell中执行。

5.循环控制

该脚本的功能是把mydir里面所有文件后缀加个.txt

 

6.远程执行

在脚本上写上远程链接的命令,就不用每次都敲一长串了。

 

7.确认执行

可把服务器同步更新的确认和真正执行写在一个脚本上。

 

8.其他语言写脚本

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值