网络操作系统(Linux)

---终端命令语句

 

pwd:获取当前路径

从/开始的路径都是绝对路径

/:根目录

*:一切

cd:切换路径

touch:建立文件

rm :删除文件

clear :清屏

history:历史命令__比如history 10指最近10条命令

remove:删除命令

cd.

cd .. :回到上一级桌面

cd -上一级命令所在路径

mkdir 文件夹建立

whoami/who am i 显示我是谁

date查看日期

date+%y只看年的后两位数字

date+%Y只看年

cal看日历

 

ls/ls-l当前路径全部内容

ls -a隐藏文件显示

ls--help查关于ls的所以命令

--help/man  查相关信息

Ctrl+A光标回到命令行首

Ctrl+c调转下一条命令语句

Ctrl+u光标往前删干净

Ctrl+k光标往后删干净

Ctrl+e光标回到命令行末

Ctrl+x光标的首尾切换

上下键可以找

l+两次tab键加y查看所以命令

date +%y看年后两个数字

date +%Y看年

whatis date 修改时间

cal 2018表示查看2018年的日

alias xxx-‘yyy’

 

ln file3 file4        file3包含file4的全部内容

ln-s file5 file6 file6(链接文件,不占内存)的快捷方式指向file5

cat file3  查看内容

touch file(5,6)  新建file5和file6

 

切换账号的方法:

1:   su - root

exit

2:    su

exit

3:   su- root

exit

4:   su –

Exit

 

root到别的账号免密,别的到root需要密码

file file6查看文件或文件夹的内容(大小,权限,设备…)

stat file3  查看文件或文件夹的内容

rm-f强制删除文件

rm-i:忽略询问信息,直接删

rm-r:不管文件或文件夹下有什么东西,全部删完

rm-r-/*  :毁系统(别用)

wc file10(word count):出现1(行line) 1 (列 word)5(字符 charactor) file10

cp /etc/passwd /home/tomy/ passwd 从/etc/passwd复制到/home/tomy/passwd

cat /home/tomy/passwd 查看/home/tomy/passwd的内容

more /home/tomy/passwd 查看/home/tomy/passwd的内容,一条一条查看

less /home/tomy/passwd查看/home/tomy/passwd的内容,一次看完

head-n 5 /home/tomy/passwd 看前5行,默认10行(head /home/tomy/passwd)

tail-n 5 /home/tomy/passwd看后5行,默认10行(tail /home/tomy/passwd)

 

mkdir aa 相对路径(当前文件路径下建文件夹)

mkdir /home/tomy/aa  绝对路径(tomy路径下建文件夹)

mkdir –p /home/test/aa 当前根目录下,一层一层不存在自动新建,(权限不够调到root下,即/home/root/aa)

 

 

2018-10-08号

vim file1.txt:进入命令模式:

按i:光标之前插入字符

Esc:退出插入 

a:光标之后插入字符

o:光标前一行插入空白行

I:光标这一行首插入字符

A:光标这一行尾插入字符

O:光标前一行插入字符。

:w(退出)  :q(退出)   :wq(退出)   :!q(强制退出) 

:/a(查找a)  

:set nu(加行号(生效一次)) 

:set nonu(去行号(生效一次))

u(后退)  ctrl+r(前进)

     young

:s#  #  #g(有g修改光标所指的一行,没g修改光标指的那个)

Old

      young

:1,$ s#  #  #g(修改整篇)

Old

 

eyy p(复制光标所在的行)  nyy p(复制粘贴)  ndd p(剪切粘贴) 

x(删除光标选中)

       r+0/1/2/a/…(修改光标的内容为0/1/2/a/…)

shift+ZZ(保存退出)

Ctrl+v然后y 然后p(复制整块)   

Ctrl+v然后x(删除备注)  

Ctrl+v 然后光标向下几行然后大写i然后按esc

 

:sp(分屏)

Ctrl+w (光标移到下一屏)  Ctrl+ww (光标回到上一屏)

 

 

 

 

 

进程:

  Pstree:所有进程

firefox:打开火狐

pstree| grep –I firefox  只查看火狐进程

ctrl+shift+t:打开多个标签

ps:查看进程

ps|head:查看进程

ps –ef: 查看进程

ps –ef|head: 查看首个进程

ps aux|head:查看电脑当前所以进程

ps –ef|grep firefox:查看包括本身的进程

ps –ef|grep –v grep|grep firefox:查看不包括本身的进程,即只有火狐

pgrep firefox:模糊查找

pidof firefox:精确查找

ps –ex –o pid,%cpu|head:查找pid和%cpu这两行

 

关进程: pgrep firefox   然后 kill -2 6967

关进程:kill -2 $(pgrep firefox)

关进程:killall -2 firefox

以上三种关不了用killall -9 firefox强制关闭

Ctrl+z:刚刚执行的进程停止并放到后台  查看还在否:jobs(查看后台)  bg 1(运行后台***为1的命令)然后jobs此时后台进程运行   kill -9 %1(杀死***为1的进程)

fg 1:后台的东西调到前台来

firefox &:让他放到后台跑

nohup firefox &> /dev/null &  :放到后台/dev/null下运行

 

 

 

 

useradd java2jva2:添加用户

echo redhat|passwd –stdin java2jva2:给新添加的用户设置密码

userdel -r java2jva2:删除用户

 

 

添加用户到指定目录:

# useradd -c 'ianjjaavvaa' -s /sbin/nologin \  回车后 -M -g jerry -u 2000 jjaavvaa

 

更改指定日期:

chage -m 10  -M 30 -W 5 -I 3 -d 2008-10-14 \ 回车后 -E 2018-12-31 jjaavvaa

 

 

groupadd class 添加组

groupdel class 删除组

gpasswd -a jjaavvaa class: 将用户“jjaavvaa”加入到“class”组中

 

passwd -d jerry:免密

 

 

ls -l|grep pass :查找

chown . yang passwd: 把yang过户给passwd

chown yang.yang passwdbk:把yang(user)和yang(group) 过户给passwd

 

chgrp java2 passwd:

终端命令语句全

 

终端命令语句全

 

r:4

w:2

x:1

chown yonghu file:递归修改

chown -R yonghu directory:递归修改

 

文件夹的最高权限:777

文件的最高权限:666

Umask=0022/0033

(文件的umask奇数位-1,文件夹不变)

 

 

 

 

su -:跳转上一目录。

su -  jerry:跳转到jerry目录

# which passwd:查看passwd所在的目录

特殊权限:

  1. 可执行命令的所有者上面出现了s,别的角色执行这个命令时,临时具有了这个命令的最高权限:

 

2.当前群组目录上面出现了s,别的角色进入这个目录新建文件或文件夹,新建的文件或文件夹永久具有了这个群组

:Chmod g+s s2

Ls –l

cd..

cd /tmp

ls –l|grep s2

su – java2jv2

cd /tmp/s2

mkdir xxx

touch yyy.txt

ls –l

 

 

3.其他者上面出现了t,那当前目录下全部都不能删除该目录下的所有东西

: chmod o+t t

Ls -l|grep t

 

 

隐藏权限:+a:只能多不能少  +i:不能动

ls -a:查看隐藏文件

 

 

 

查找:

 find /tmp/ -name "a*":按姓名查找

find /tmp/ -group jerry:按group查找

find /tmp/ -user jerry:按user查找

find /tmp/ -group jerry -o -user jerry: 按group查找和user查找

find /tmp/ -size 2k:按大小

find /tmp/ -type f:按文件查找

find /tmp/ -type d:按文件夹查找

find /tmp/ -perm 644:精确查找

 

 

 

 

 

2018/10/29

lsblk:查看磁盘分区

parted /dev/sdb mklabel msdos:标量

fdisk –l:分区

fdisk /dev/sdb:分区

mkfs -t xfs /dev/sdb1:文件

Partprobe /dev/sd?:系统盘手动同步

mkfs -t xfs /dev/sdb1   :给sdb1赋予文件系统

补齐命令:连续点两下tab键

挂载:

    mkdir 20181029

mount /dev/sdb1 20181029   (挂载只一次,关机重开就不在)

df –hT  (查看是否挂载成功)

vim /etc/fstab:永恒挂载

pvscan:查看内存

lvextend -L +300M /dev/vg0/lv1:扩大

pvcreate /dev/sdb{5..9}:新增5~9

vgextend vg0 /dev/sdb{8..9}:扩展vg

umount /root/2018102902:卸挂载

xfs_growfs /root/2018102902:自我膨胀(xfs格式)

resize2fs /dev/vg0/lv1

mkfs.ext4 /dev/vg0/lv1

 

 

 

2018/11/5

 

查看系统

关闭状态:systemctl stop sshd

查看状态:systemctl is-active sshd

重开状态:systemctl restart sshd

 

 

查看是否开:systemctl is-enabled sshd

开机开起来:systemctl is-enabled sshd

开机关状态:systemctl disable sshd

 

禁用:systemctl mask sshd

解禁:systemctl unmask sshd

 

查看命令:systemctl status sshd –l

 

 

查看:ls /usr/lib/systemd/system/sshd.service

查看:cat /usr/lib/systemd/system/sshd.services

 

 

                                    ----------到此为止系统完

 

网络:

 

查看网卡的信息(活跃的):ifconfig

查看网卡的信息(所有的):ifconfig –a

查看网卡的信息(具体的):ifconfig eno16777728

 

查看路由表:route –n

 

查看dns服务器:cat /etc/resolv.conf

查看是否有网卡连接:nmcli connection

删除eno16777728网卡连接:nmcli connection delete eno16777728

编辑:vim /etc/default/grub

文件生效:grub2-mkconfig -o /boot/grub2/grub.cfg

重启:reboot

打开网络连接窗口:nm-connection-editor &

查看网址:ping www.baidu.com   

 

 

 

 

2018/11/26

归档和压缩

1.归档(打包):tar java2.tar a*.txt

Tar tf java2.tar

解归档:tar xvf java2.tar –C /opt/

2.归档:dd if=/dev/zero of=file1 bs=1M count=100

压缩方法一:

压缩:gzip file1

解压缩:gzip -d file1.gz

压缩方法二:

压缩:bzip2 file1

解压缩:bzip2 -d file1.bz2

 

      归档加压缩:tar jcvf hello.tar.bz2 hosts passwd services

      解压缩:tar jxvf hello.tar.bz2 –remove files

 

 

两机互传(linux互传)

V002的java1.tar.gz传到v001:scp/opt/java1.tar.gz 192.168.26.101 /opt/

把v001的text传过来:scp [email protected]:/opt.text .

两机互传(linux和电脑互传)

rz:电脑传到linux

sz:linux传到电脑

 

 

 

查询包

根据文件查来自哪个包:rpm –qf /etc/vsftpd/vsftpd.conf

查看用的什么包:rpm –qf /etc/passwd

查看用的什么包rpm –qf $(which ls)   例:rpm –qf $(which ifconfig)

 

已存在的包不卸载重新安装:rpm –ivh vsftpd- 3.0.2-9.el7.x86_64.rpm –force

Rpm –Uvh vsftpd- 3.0.2-22.el7.x86_64.rpm

 

Rpm –e vsftpd

Rpm –qa|grep vsftpd

 

 

[aa]

name=aaaaaa

baseurl=ftp://vms001/dvd     //连接到vms001

enabled=1                 //确实要使用

gpgcheck=0                //开关(不启用)

 

 

 

 

 

 

Yum groupinstall xxx      //安装可用组xxx

Yum groupremove xxxxxx   //卸载

Yum list zabbix\*           //查看可安装的包

Wget http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-rel7.noarch.rpm  //下载包rpm –ivh zabbix-release-4.0-1.el7.noarch.rpm   安装包

Env:浏览环境变量

 

Vim xx.sh进入命令模式

#!/bin/bash

A=10

B=20

if [ $A -lt $B ]        //命令不用$符号 ,使用一定用到$符号

then

    echo "A xiaoyu B"

fi

 

跳出后

Chmod u+x xx.sh    //保存

Sh xx.sh           //运行

 

 

Vim num3.sh进入命令模式

//单个数字的交互

#!/bin/bash

read -p "enter a number:" num

A=100

if [ $num -lt $A ]

then

    echo "xiaoyu $A"

else

    echo "dayu huo dengyu SA"

fi

//多个数字的交互

#!/bin/bash

read -p "enter a number:" num1 num2 num3

A=100

if [ $num -lt $A ]

then

    echo "xiaoyu $A"

else

    echo "dayu huo dengyu SA"

fi

 

 

//输入两个数,输出两个数从小到大的和

#!/bin/bash

read -p "enter two number:" num1 num2

tmp=0

sum=0

if [ $num1 -lt $num2 ]

then

    tmp=$num1

    sum=$num1

    while [ $tmp -lt $num2 ]

    do

    let tmp++

    let sum=$sum+$tmp

    done

echo "num1:$num1,num2:$num2,sum:$sum"

else

    tmp=$num2

    sum=$num2

    while [ $tmp -lt $num1 ]

    do

    let tmp++

    let sum=$sum+$tmp

    done

echo "num1:$num1,num2:$num2,sum:$sum"

fi

 

 

 

 

两页ppt阐述服务是干嘛的

Ppt讲解5-10分,详尽,有文字有截图(一步一步)

每个人3题,满分15分

 

2018/12/10

脚本编程

[[email protected] ~]# a="123 123"

[[email protected] ~]# echo $a

123 123

[[email protected] ~]# b=1+2

[[email protected] ~]# echo $b

1+2

[[email protected] ~]# declare -i c

[[email protected] ~]# c=1+2

[[email protected] ~]# echo $c

3

[[email protected] ~]# echo "scale=3;1/3"|bc

.333

[[email protected] ~]# echo $$

2754

[[email protected] ~]# bash

[[email protected] ~]# echo $$

3094

[[email protected] ~]# exit

exit

[[email protected] ~]# echo $$

2754

[[email protected] ~]# echo $a

123 123

[[email protected] ~]# echo $b

1+2

[[email protected] ~]# echo $c

3

[[email protected] ~]# bash

[[email protected] ~]# echo $a

 

[[email protected] ~]# echo $b

 

[[email protected] ~]# echo $c

 

[[email protected] ~]# exit

exit

[[email protected] ~]# export d=9

[[email protected] ~]# echo $d

9

[[email protected] ~]# bash

[[email protected] ~]# echo $d

9

[[email protected] ~]# export e=8

[[email protected] ~]# echo $e

8

[[email protected] ~]# exit

exit

[[email protected]vms002 ~]# echo $e

 

[[email protected] ~]# vim aaa.sh

[[email protected] ~]# cat aaa.sh

#i/bin/bash

echo "the third is $3"

echo "the second is $2"

echo "the first is $1"

[[email protected] ~]# sh aaa.sh tom jerry lucas

the third is lucas

the second is jerry

the first is tom

[[email protected] ~]# set a b c d e f g h i j

[[email protected] ~]# echo $1

a

[[email protected] ~]# echo $2

b

[[email protected] ~]# echo $10

a0

[[email protected] ~]# echo ${10}

j

[[email protected] ~]# zz=book

[[email protected] ~]# echo "today I buy ten ${zz}s, total use \$100"

today I buy ten books, total use $100

 

 

 

[[email protected] ~]# aa=10

[[email protected] ~]# let bb=aa++

[[email protected] ~]# echo $aa

11

[[email protected] ~]# echo $bb

10

[[email protected] ~]# cc=10

[[email protected] ~]# let dd=++cc

[[email protected] ~]# echo $cc

11

[[email protected] ~]# echo $dd

11

[[email protected] ~]# echo $((2*9-8))

10

[[email protected] ~]#

[[email protected] ~]# echo $((2**10))

1024

[[email protected] ~]# echo $[2**10]

1024

 

 

echo $?:判断语句语法,权限是否正确(0正确)

 

 

#!/bin/bash

cat <<EOF

******welcome to shell******

EOF

read -p "enter your choice(y/n) " answer

case $answer in

              y)

                minglingxulie1

              n)

                minglingxulie2

              *)

                echo "bu qidai de shuru"

                exit 1   //退出命令,不执行后面的

esac

minglingxulie3

 

 

//判断是否为数字,是数字判断是否在0-120 ,60-120老年 。。。

 

#!/bin/bash

read -p "Please input an number: " num

[[ $num =~ ^[0-9]+$ ]]

if [ $? -ne 0 ]; then

   echo "don't a number"

exit 1

fi

if [ $num -gt 120 ] || [ $num -lt 0 ]; then

      echo "don't limit age"

      exit 1

elif [ $num -ge 60 ] && [ $num -le 120 ]; then

      echo "old people"

elif [ $num -ge 18 ] && [ $num -lt 60 ]; then

      echo "young people"

else

      echo "kid"

fi

数字大于100或小于0

 

 

相关文章:

  • 2021-12-27
  • 2021-10-06
  • 2022-12-23
  • 2021-06-22
  • 2021-06-18
猜你喜欢
  • 2022-12-23
  • 2021-06-11
  • 2021-11-16
  • 2021-10-17
相关资源
相似解决方案