Linux常用指令

来源:互联网 发布:阿里云备案转入 编辑:程序博客网 时间:2024/05/16 17:42

 

1、 虚拟机IPADDR、GATEWAY设置


2、 ls显示文件夹目录

表达形式(ls 参数 执行文件)

-l列表形式显示

-lh以人可以看懂的形式显示

-a显示包括隐藏文件

-la以列表形式显示包括隐藏文件

 

..显示上层文件

. 显示本文件

3、 pwd显示当前路径

4、 cd+路径  切换到该路径目录下

cd 切换到用户主目录

cd - 切换到上次切换的目录

5、 mkdir+路径/文件夹名 创建文件夹

-p 如果父路径不存在,则继续创建父路径直至完成

6、 rm+路径/文件夹名 删除文件夹

-r 删除文件夹

-rf强制删除指定的所有文件夹,不再询问

7、 touch创建空文件

8、 ls> +文件 创建文件并将输出结果覆盖写入到文件中(如果没有该文件则先创建)

ls >> +文件 创建文件并将输出结果追加写入到文件中(如果没有该文件则先创建)

9、 echo“String” 输出字符到控制台(常用的有echo“123” >> *.txt)

例:user=”zhangsan”

       echo $user

以上代表输出变量

10、                     cat +文件 查看该文件内容

more +文件 分页查看

less +文件 按行查看

tail -f -10 实时查看(-f)末尾10行

                -f 跟踪文件唯一的id,改名继续跟踪改名后的文件

                -F跟踪文件名

11、                     (1)vi +文件 编辑该文件

(2)按i进入编辑模式

(3)按Esc退出编辑模式

(4)按shift+zz保存并退出

12、                     编辑模式下的快捷键:(1)yy复制本行

 (2)p粘贴

(3)dd删除

(4)gg跳到首行

(5)G跳到末行

(6)u 撤销

(7)退出编辑模式,按/+字符  搜索该字符

(8)v 选择块,y复制

(9):q! 不保存直接退出

(10):w 保存

(11):wq保存并退出,快捷键:shift+zz

(12)ctrl+z 挂起

13、                     cp +文件 +文件 拷贝文件

14、                     mv +文件名 +文件名 重命名/移动

15、                     gzip +文件 压缩文件

16、                     gunzip +文件 解压缩文件

17、                     tar -cvf +目标文件 +需要打包的文件    打包

      -xvf解包 -C +目录  (-C表示指定目录)

      -zcvf +目标文件 +需要打包的文件    打包并压缩

      -zxvf+解包文件-C+目录  (-C表示指定目录)  解包并解压缩

18、                     useradd +用户名 添加用户

19、                     userdel +用户名 删除用户

20、                     passwd +用户名 为该用户设置密码

21、                     groupadd +组名 添加用户组

22、                     usermod -g +组名 +用户名 将用户添加到组 (-g指定后面接的是用户组)

23、                     su +账户 切换到其他账户

24、                     sudo +命令 可以执行root用户的命令

配置sudo权限:root用户下vi /etc/sudoers

                                    ## Allow root to run any commands anywhere

root     ALL=(ALL)       ALL

Yancy   ALL=(ALL)       ALL

25、                     chmod 配置权限 ugo分别代表user,group,other.+-分别代表加、减权限

或者用数字代表权限配置,比如111111111,或者777

                                chmod777 +文件=chmodugo+rwx +文件

26、                      

27、                     挂载光驱:(1)mkdir /mnt/mydisk 创建挂载文件夹mydisk

(2)mount -t iso9660 -o loop /dev/cdrom /mnt/mydisk将光驱设备    (cdrom)挂载到mydisk中

命令格式:mount[-t vfstype] [-o options] device dir 
其中: 
1.-t vfstype 指定文件系统的类型,通常不必指定。mount会自动选择正确的类型。常用类型有: 
光盘或光盘镜像:iso9660 
DOS fat16文件系统:msdos 
Windows 9x fat32文件系统:vfat 
Windows NT ntfs文件系统:ntfs 
Mount Windows文件网络共享:smbfs 
UNIX(LINUX) 文件网络共享:nfs 

2.-o options 主要用来描述设备或档案的挂接方式。常用的参数有: 
loop:用来把一个文件当成硬盘分区挂接上系统 
ro:采用只读方式挂接设备 
rw:采用读写方式挂接设备 
iocharset:指定访问文件系统所用字符集 

3.device 要挂接(mount)的设备。 

4.dir设备在系统上的挂接点(mountpoint)。

 

28、                     卸载挂载:umount /mnt/mydisk

29、                     开机自动挂载:vi /etc/fstab 文件中为开机自动挂载的目录

30、                     du –h /root 查看 /root查看目录占用磁盘的大小

df –h 查看磁盘剩余空间

31、                     systemctl list-units --type=service

32、                     service –status-all 查看所有后台服务进程

service +服务名 restart  重启

service +服务名 stop  停止 

service +服务名 start  开始

33、                     chkconfig -list 查看系统服务列表

34、                     chkconfig +服务 on/off  让服务开机启动/停止

35、                     http://www.jb51.net/article/101576.htm   防火墙

36、                     ps -ef|grep +服务名 可以查看各种服务,进程号之类的

37、                     kill -9 +服务 杀掉进程

38、                     虚拟机克隆步骤:


39、                     yum list查看软件仓库的软件列表(可以配合grep筛选)

更改本地仓库方法:(1)挂载光盘;

    (2)修改/etc/yum.repos.d下面的所有文件名;

    (3)打开一个修改file后面的路径,改成挂载的光盘目录,并更改       enable=1。

40、                     ssh 用户名@ip地址   登录到其他服务器

ssh 用户名@ip地址 “命令”   执行命令

41、                     ssh-keygen生成公钥和私钥

ssh-copy-id 用户名@192.168.80.13  拷贝公钥到此ip

scp  (+r表示递归拷贝) +文件 +ip地址:路径  拷贝文件

42、                     netstat -nltp查看网络进程中的端口

43、                     安装jdk:

(1)解压

(2)配置/etc/profile

export JAVA_PATH=/..../..../

export PATH=$PATH:$JAVA_HOME/bin

                                                (3)source/etc/profile

44、                     rpm -ivh +文件 安装rpm格式的安装包

45、                     rpm -e +文件 --nodeps  删除安装文件(--nodeps表示无视依赖关系)

46、                     crontab -e 编辑定时任务 –u +user  编辑user的定时任务

crontab -l   罗列定时任务列表

47、                     变量拼接:假设a=”hello world”

        则${a}s=helloworlds

48、                     变量运算:i=1,l=2

(1)((a=i+l))

     echo $a

(2)echo $[i+l]

(3)let b=i+l

     echo $b

49、                     read 读取输入值

50、                     read p1 读取输入值赋给p1

51、                     read –p “please enter somthing” p1  提示输入值

52、                     if语句的格式

if [ 1 < 2 ]

then

echo 1

elif [ 1 = 2 ]

then

echo 2

else

echo 3

fi

53、                     运算符

关系运算符

关系运算符只支持数字,不支持字符串,除非字符串的值是数字

下表列出了常用的关系运算符,假定变量 a 10,变量 b 20

运算符

-eq

检测两个数是否相等,相等返回 true

[ $a -eq $b ] 返回 false

-ne

检测两个数是否相等,不相等返回 true

[ $a -ne $b ] 返回 true

-gt

检测左边的数是否大于右边的,如果是,则返回 true

[ $a -gt $b ] 返回 false

-lt

检测左边的数是否小于右边的,如果是,则返回 true

[ $a -lt $b ] 返回 true

-ge

检测左边的数是否大于等于右边的,如果是,则返回 true

[ $a -ge $b ] 返回 false

-le

检测左边的数是否小于等于右边的,如果是,则返回 true

[ $a -le $b ] 返回 true

 

字符串运算符

下表列出了常用的字符串运算符,假定变量 a "abc",变量 b "efg"

运算符

=

检测两个字符串是否相等,相等返回 true

[ $a = $b ] 返回 false

!=

检测两个字符串是否相等,不相等返回 true

[ $a != $b ] 返回 true

-z

检测字符串长度是否为0,为0返回 true

[ -z $a ] 返回 false

-n

检测字符串长度是否为0,不为0返回 true

[ -n $a ] 返回 true

str

检测字符串是否为空,不为空返回 true

[ $a ] 返回 true

 

 

布尔运算符

下表列出了常用的布尔运算符,假定变量 a 10,变量 b 20

运算符

!

非运算,表达式为 true 则返回 false,否则返回 true

[ ! false ] 返回 true

-o

或运算,有一个表达式为 true则返回 true

[ $a -lt 20 -o $b -gt 100 ] 返回 true

-a

与运算,两个表达式都为 true才返回 true

[ $a -lt 20 -a $b -gt 100 ] 返回 false

 

逻辑运算符

以下介绍 Shell 的逻辑运算符,假定变量a 10,变量 b 20:

运算符

&&

逻辑的 AND

[[ $a -lt 100 && $b -gt 100 ]] 返回 false

||

逻辑的 OR

[[ $a -lt 100 || $b -gt 100 ]] 返回 true

 

 

54、                     While循环

while [  ]

do

commond

done

55、                     case判断

case $1 in

start)

          echostart

;;

End)

          echoend

;;

*)

          echoothers

esac

 

在调用case命令的时候,在shell脚本后面跟一个数字或者字符串为参数,分别为$1、$2、$3......,当>=10时,用${10}、${11}......

56、                     For 循环

for((i=1;i<5;i++))

do

         echo$i

done

-----------------------------------------------------------------------

forN in 1 2 3

do

echo$N

done