linux条件判断命令 linux的if判断

linux中test$count什么意思Linux系统中有时需要检测某个条件是否成立,那么就要用到test命令了,Linux下test的用法有很多 , 下面就随学习啦小编一起来学习下Linux系统中如何使用test命令吧 。
1.判断一个命令的结果使用test , 其返回0,或一个整数 。返回0表示true,返回整数表示错误码
2.获取上一个命令的返回结果使用$?
3.例如
我的服务器上面存在/home/www这样一个文件夹,所以ls /home/www这个命令的返回结果为0;
即echo $?的返回值为0
我的服务器上面不存在/home/kkk这样一个文件夹,所以ls /home/kkk这个命令的返回结果为这个命令执行后的错误码;
9b1fbcaf2efa8f872d1e0fea7481e019.png
即echo $?的返回结果为2 。这个2表示文件或文件夹不存在 。
4.常用的文件测试符
-e表示此文件名是否存在
-f表示此文件名是否是文件
-d表示此文件名是否是文件夹
-r表示此文件名是否可读
-w表示此文件是否可写
-x表示此文件是否可执行
-S表示此文件是否问socket
4.1在我的服务器上/home/www为一个文件夹
所以test -e /home/www的结果为0,即true,此文件名存在
所以test -f /home/www 的结果不为0,即false , 此文件名不为文件
所以test -d /home/www的结果为0,即为true,此文件名为文件夹
4.2在我的服务器上/home/kkk这个文件名不存在
所以test -e /home/kkk的结果不为0,即false,此文件名不存在
所以test -d /home/kkk的结果不为0,即false , 此文件名不问文件夹 。
上面就是Linux逻辑命令之test命令的使用方法介绍了,如果你要判断一个条件是否成立,就会用过该命令,你学会了吗?
文章知识点与官方知识档案匹配
CS入门技能树Linux进阶新增用户
24650 人正在系统学习中
打开CSDN APP,看更多技术内容
shell语法中的test命令详解
test命令用法 。功能:检查文件和比较值 1)判断表达式 if test (表达式为真) if test !表达式为假 test 表达式1 –a 表达式2 两个表达式都为真 test 表达式1 –o 表达式2 两个表达式有一个为真 2)判断字符串 test –n 字...
继续访问
linux期末vi简答题,Linux操作系统期末练习题lym
71.进程可以忽略大部分信号,但下列信号中()不能忽略 A.SIGBORT B.SIGILL C.SIGQUIT D.SIGKILL72.调用exec函数会将原来设置为要捕获的信号都更改为() A. 默认 B.忽略 C.另一捕获 D.默认或忽略 73.可用于在不同主机的进程间通信的技术是() A. 管道 B.共享内存 C.消息队列 D.套接字 74.只能在...
继续访问
linux命令test功能,linux利用test命令的测试功能
当要检测系统上的某些文件或者相关属性时,利用test这个命令来工作:测试的标志代表意义-e该文件名是否存在-f该文件名是否存在且为文件-d该文件名是否存在且为目录-b该文件名是否存在且为一个block device设备-c该文件名是否存在且为一个character device设备-S该文件名是否存在且为一个Socket文件-p该文件名是否存在且为一个FIFO文件-L该文件名是否存在且为一个连接文...
继续访问
热门推荐 Linux shell 的 test 命令用法详解
基本格式: test expression expression为test命令构造的表达式 。这里expression是test命令可以理解的任何有效表达式,该简化格式将是读者可能会踫见的最常用格式 返回值: test命令或者返回0(真) 或者返回1(假). test可理解的表达式类型分为四类:表达式判断字符串比较数字比较文件比较 1)判断表达
继续访问
linux shell 条件测试
1.文件条件测试 -r可读 -w可写 -x可执行 ...
继续访问
test
test命令编程开发test命令是shell环境中测试条件表达式的实用工具 。语法test(选项)选项-b文件:如果文件为一个块特殊文件,则为真; -c文件:如果文件为一个字符特殊文件,则为真; -d文件:如果文件为一个目录,则为真; -e文件:如果文件存在 , 则为真; -f文件:如果文件为一个普通文...
继续访问
linux 测试 命令大全,linux命令大全之-test测试命令
格式:test 测试条件字符串测试:注意空格:test str1 == str2 测试字符串是否相等test str1 != str2 测试字符串是否不相等test str1 测试字符串是否不为空test -n str1 测试字符串是否不为空test -z str1 测试字符串是否为空整数测试test int1 -eq int2 测试整数是否相等test int1 -ge int2 测试int1是...
继续访问
linux test 命令,Linuxtest命令、test命令
Linux中的test命令test命令可以检测一个文件或者目录是否存在,或者对一个文件或目录的读写权限等等常见语法test -选项 文件或目录-e 文件名是否存在,存在$?返回0也就是true-f 文件名是否存在 , 且为文件 存在$?返回0-d 文件名是否存在 , 且为目录 存在$?返回0-L 文件名是否存在,且为链接文件 存在$?返回0-r -w -x 这三个是单选项,文件名是否存在,并且具有可读...
继续访问
shell test 命令
shell test 命令
继续访问
linux中test命令详解
linux中test命令详解,包含test的多种实用方法
继续访问
[Linux]:Linux shell 的 test 命令用法详解
基本格式: test expression expression为test命令构造的表达式 。这里expression是test命令可以理解的任何有效表达式,该简化格式将是读者可能会踫见的最常用格式 返回值: test命令或者返回0(真) 或者返回1(假). test
继续访问
linux test -e ps,test
1、Linux如何挂载windows下的共享目录?mount.cifs //IP地址/server /mnt/server -o user=administrator,password=123456linux 下的server需要自己手动建一个 后面的user与pass 是windows主机的账号和密码 注意空格 和逗号2、如何查看http的并发请求数与其TCP连接状态?netstat -n | ...
继续访问
linux之test命令详解
linux之test命令详解 test作用检查某个条件是否成立,返回值为0(真)或者其他值(假),可通过echo $?查看返回值,也常用于循环和条件语句 。test一般有三种用法: 测试文件或者文件夹 字符串比较 数值比较 1.测试文件或者文件夹 参数 说明 -e 当路径存在时返回真 -f 当路径存在且为文件时返回真 -d 当路径存在且为文件夹时返回真 [root@linuxforliuhj test]# ll total 20 -rw-r--r--. 1 root root
继续访问
最新发布 linux test命令
继续访问
linux test命令测试标志
test命令测试标志
继续访问
linux test 使用方法,Linux系统test命令使用方法介绍
Linux系统中有时需要检测某个条件是否成立,那么就要用到test命令了,Linux下test的用法有很多,下面就随小编一起来学习下Linux系统中如何使用test命令吧 。1.判断一个命令的结果使用test , 其返回0,或一个整数 。返回0表示true,返回整数表示错误码2.获取上一个命令的返回结果使用$?3.例如我的服务器上面存在/home/www这样一个文件夹 , 所以ls /home/www这个命令...
继续访问
linux shell编程学习--test测试比较命令
本文介绍了linux shell自带test命令的各种用法 。在linux shell编程过程中,如何使用test命令进行算术比较,文件属性,文件修改 , 字符串比较,以及逻辑表达式运算的操作 。
继续访问
linux shell test 命令
Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试 。1.数值比较 参数 说明 -eq 等于则为真 -ne 不等于则为真 -gt 大于则为真 -ge 大于等于则为真 -lt 小于则为真 -le 小于等于则为真 举例: num1=100 num2=1...
继续访问
linux shell 字符比较与数值比较 , bash的调试
test命令用法 。功能:检查文件和比较值1)判断表达式if test(表达式为真)if test !表达式为假test 表达式1 –a 表达式2两个表达式都为真test 表达式1 –o 表达式2
继续访问
linux中test的用法
写评论
评论
linuxif语句可以套while吗在linux awk的 while、do-while和for语句中允许使用break,continue语句来控制流程走向,也允许使用exit这样的语句来退出 。break中断当前正在执行的循环并跳到循环外执行下一条语句 。if 是流程选择用法 。awk中 , 流程控制语句,语法结构,与c语言类型 。下面是各个语句用法 。
一.条件判断语句(if)
复制代码代码如下:
if(表达式) #if ( Variable in Array )
语句1
else
语句2
格式中"语句1"可以是多个语句,如果你为linux条件判断命令了方便Unix awk判断也方便你自已阅读,你最好将多个语句用{}括起来 。Unix awk分枝结构允许嵌套,其格式为linux条件判断命令:
复制代码代码如下:
if(表达式)
{语句1}
else if(表达式)
{语句2}
else
{语句3}
复制代码代码如下:
[chengmo@localhost nginx]# awk 'BEGIN{
test=100;
if(test90)
{
print "very good";
}
else if(test60)
{
print "good";
}
else
{
print "no pass";
}
}'
very good
每条命令语句后面可以用“;”号结尾 。
Linux命令命令格式: 命令 [-选项] [参数]
如:ls -la /usr
**说明:**
大部分命令遵从该格式
多个选项时,可以一起写 eg:ls –l –a à ls –la
简化选项与完整选项(注:并非所有选项都可使用完整选项)eg:ls –all à ls –a
作用:切换用户身份
语法:su [选项] 用户名
-c 仅执行一次命令 , 而不切换用户身份
$ su – root
env
$ su – root –c “useradd longjing”
文件或目录的CRUD
英文:change directory命令路径:内部命令执行权限:所有用户
作用: 切换目录
语法:cd [目录]/ 切换到根目录
.. 回到上一级目录
. 当前目录
~ 当前用户的宿主目录(eg:# cd ~用户名 进入某个用户的家目录)
英文:list 命令路径:/bin/ls 执行权限:所有用户
作用:显示目录文件
语法:ls [-alrRd] [文件或目录]
-a all 显示所有文件,注意隐藏文件 , 特殊目录.和..
-l(long) 显示详细信息
-R(recursive)递归显示当前目录下所有目录
-r (reverse) 逆序排序
-t(time)按修改时间排序(降序)
英文:print working directory 命令路径:/bin/pwd 执行权限:所有用户
作用:显示当前工作目录
语法:pwd [-LP]
-L 显示链接路径,当前路径 , 默认
-P 物理路径
eg:# cd /etc/init.d
英文:make directories 命令路径:/bin/mkdir 执行权限:所有用户
作用:创建新目录
语法:mkdir [-p] 目录名
-p 父目录不存在情况下先生成父目录 (parents)
eg: mkdir linux/test 如果目录linux不存在,则报错,使用参数-p即可自动创建父目录 。
命令路径:/bin/touch 执行权限:所有用户
作用:创建空文件或更新已存在文件的时间
语法:touch 文件名
eg:toucha.txtb.txttouch {a.txt,b.txt}同时创建多个文件
创建带空格的文件 eg:touch "program files" 在查询和删除时也必须带双引号
注意:生产环境中,文件名,一定不要加空格
英文:copy 命令路径:/bin/cp 执行权限:所有用户
作用:复制文件或目录
语法:cp [–rp] 源文件或目录 目的目录
-r -R recursive 递归处理,复制目录
-p 保留文件属性 (原文件的时间不变)
eg:
1,相对路径 cp –R /etc/* . cp –R ../aaa ../../test/
2,,绝对路径 cp –R/ ect/service /root/test/aa/bb
英文:move 命令路径:/bin/mv 执行权限:所有用户
作用:移动文件或目录、文件或目录改名
语法:mv 源文件或目录 目的目录
英文:remove 命令路径:/bin/rm 执行权限:所有用户
作用:删除文件
语法: rm [-rf] 文件或目录
-r(recursive)删除目录 , 同时删除该目录下的所有文件
-f(force) 强制删除文件或目录 即使原档案属性设为唯读,亦直接删除,无需逐一确认
注意:工作中,谨慎使用rm –rf 命令 。
扩展点 :删除乱码文件
一些文件乱码后使用rm -rf 依然无法删除
此时,使用ll -i 查找到文件的inode节点
然后使用find . -inum 查找到的inode编号-exec rm {} -rf ;
就能顺利删除了
英文:concatenate 命令路径:/bin/cat 执行权限:所有用户
作用:显示文件内容
语法:cat [-n] [文件名]
-n 显示行号
eg:cat /etc/services
命令路径:/bin/more 执行权限:所有用户
作用:分页显示文件内容
语法:more [文件名]
空格或f显示下一页
Enter键显示下一行
q或Q退出
命令路径:/usr/bin/head 执行权限:所有用户
作用:查看文件前几行(默认10行)
语法:head [文件名]
-n 指定行数
eg:head -20 /etc/services head –n 3 /etc/services
命令路径:/usr/bin/tail 执行权限:所有用户
作用:查看文件的后几行
语法:tail [文件名]
-n 指定行数
-f (follow) 动态显示文件内容
获取一个大文件的部分文件,可使用head或tail命令
head -n 100 /etc/services config.log
英文: link命令路径:/bin/ln 执行权限:所有用户
作用:产生链接文件
语法:
ln -s[源文件][目标文件] 创建软链接源文件 使用 绝对路径
ln [源文件][目标文件] 创建硬链接
eg:ln -s /etc/service./service.soft
创建文件/etc/service的软链接service.soft
eg:/etc/service/service.hard
创建文件/etc/service的硬链接/service.hard
软连接类似于windows下的快捷方式
软连接文件格式:
lrwxrwxrwx. 1 root root 13 Jul 20 07:50 service - /etc/services
1 硬链接数量 , 如果该文件没有硬链接 , 就只有本身一个硬链接 。
13链接文件的长度
格式解析(特征):
1 , 软连接的文件类型是 l(软连接),软连接文件的权限 都是 lrwxrwxrwx
2 , -箭头指向到源文件
真正的权限取决于对源文件的权限
时间值为创建软连接的时间
软连接可以跨文件系统生成
硬链接特征
1,相当于 cp -p同步更新
2,通过i节点识别,与源文件有相同的inode节点
3,硬链接不能跨分区,ln /home/test/issuels /boot/test (错误)
4,不能针对目录使用 ln /tmp/ aa.hard (无法将目录/tmp 生成硬链接)
删除软连接
rm -rf symbolic_name
英文:manual命令路径:/usr/bin/man 执行权限:所有用户
作用:获取命令或配置文件的帮助信息
语法:man [命令/配置文件]
eg:man lsmanservices
(查看配置文件时,不需要配置文件的绝对路径,只需要文件名即可)
调用的是more命令来浏览帮助文档,按空格翻下一页,按回车翻下一行,按q退出 。
使用/加上关键的参数可直接定位搜索,n查找下一个,shift n查找上一个
eg: /-l 直接查看-l的介绍
扩展:man的级别(帮助文档的类型, 了解1 5即可)
man man-pages 查看每一种类型代表的含义 man文档的类型(1~9)
1是命令,5是配置文件 man优先显示命令 , 可指定帮助类型
eg:man 5 passwd (5代表配置文件级别)
[图片上传失败...(image-6718d2-1624438708895)]
help查看shell内置命令的帮助信息
eg:help cd
内置命令 , 使用whereis,which,man都不能查看
type 命令 查看内部命令还是外部命令
命令名 --help 列举该命令的常用选项
eg: cp --help
命令路径:/bin/find 执行权限:所有用户
作用:查找文件或目录
语法:find [搜索路径] [匹配条件]
如果没有指定搜索路径,默认从当前目录查找
find命令选项
-name按名称查找精准查找
eg:find/etc-name“init” 在目录/etc中查找文件init
-iname按名称查找
find查找中的字符匹配:
*:匹配所有
?:匹配单个字符
eg:find/etc-name“init???”在目录/etc中查找以init开头的,且后面有三位的文件
模糊匹配的条件,建议使用单引号或双引号括起来 。如果*被转义,可使用 单双引号括住查询条件,或者使用* 。
eg: # find . –name *g
-size****按文件大小查找
以block为单位,一个block是512B, 1K=2block大于 -小于 不写是等于
eg:find /etc -size -204800在etc目录下找出大于100MB的文件
100MB=102400KB=204800block
**-type **按文件类型查找
f 二进制文件l 软连接文件 d 目录 c 字符文件
eg:find /dev -type c
find****查找的基本原则 :
占用最少的系统资源,即查询范围最?。檠跫罹?
eg:
如果明确知道查找的文件在哪一个目录,就直接对指定目录查找 , 不查找根目录/
命令路径:/bin/grep 执行权限:所有用户
作用:在文件中搜寻字串匹配的行并输出
语法:grep [-cinv] '搜寻字符串' filename
选项与参数:
-c :输出匹配行的次数(是以行为单位,不是以出现次数为单位)
-i :忽略大小写,所以大小写视为相同
-n :显示匹配行及行号
-v :反向选择,显示不包含匹配文本的所有行 。
eg:grep ftp/etc/services
eg:#grep -v ^# /etc/inittab 去掉文件行首的#号
eg:# grep -n “init”/etc/inittab 显示在inittab文件中,init匹配行及行号
eg:# grep -c“init”/etc/inittab 显示在inittab文件中,init匹配了多少次
命令路径:/usr/bin/which 执行权限:所有用户
作用: 显示系统命令所在目录(绝对路径及别名)
which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果 。也就是说,使用which命令 , 就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令
alias ls='ls --color=auto'
/bin/ls
/usr/bin/which: no zs in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ch/bin)
命令路径:/usr/bin/whereis 执行权限:所有用户
作用:**搜索命令所在目录 配置文件所在目录 及帮助文档路径**
eg: which passwd和 whereispasswd
eg:查看/etc/passwd配置文件的帮助,就用 man 5 passwd
英文:GNU zip命令路径:/bin/gzip 执行权限:所有用户
作用:压缩(解压)文件,压缩文件后缀为.gz
gzip只能压缩文件 , 不能压缩目录;不保留原文件
语法:gzip 文件
-d将压缩文件解压(decompress)
解压使用gzip –d或者 gunzip
命令路径:/usr/bin/bzip2 执行权限:所有用户
作用: 压缩(解压)文件,压缩文件后缀为.bz2
语法:bzip2 [-k] [文件]
-k:产生压缩文件后保留原文件(压缩比高)
-d 解压缩的参数(decompress)
解压使用bzip2 –d或者 bunzip2
命令路径:/usr/bin/zip 执行权限:所有用户
作用: 压缩(解压)文件,压缩文件后缀为.zip
语法:zip 选项[-r][压缩后文件名称] [文件或目录]
-r压缩目录
eg:zip services.zip /etc/services压缩文件;
zip -r test.zip/test压缩目录
如果不加-r选项 , 压缩后的文件没有数据 。
解压使用unzip
命令路径:/bin/tar 执行权限:所有用户
作用:文件、目录打(解)包
语法:tar [-zcf] 压缩后文件名文件或目录
-c 建立一个压缩文件的参数指令(create) , 后缀是.tar
-x 解开一个压缩文件的参数指令(extract)
-z 以gzip命令压缩/解压缩
-j以bzip2命令压缩/解压缩
-v 压缩的过程中显示文件(verbose)
-f file 指定文件名,必选项
1,单独的打包,解包tar –cf tar –xf
2 , 打包之后,进行压缩 gzip bzip2
3 , 一步到位 tar –zcvf tar -zxvf
tar -cf-xf 单独 压缩解压缩
tar-z 以gzip打包目录并压缩 文件格式.tar.gz(.tgz)
tar-j 以bzip2打包目录并压缩 文件格式.tar.bz2
eg:tar -zcvf dir1.tar.gzdir1 使用gzip将目录dir1压缩成一个打包并压缩文件dir1.tar.gz
eg: tar -cvf bak.tar.将当前目录的文件打包为bak.tar
eg: tar -xvf bak.tar 解压
eg: tar -zcvf bak.tar.gzbak.tar 或 gzipbak.tar使用gzip将打包文件bak.tar压缩为bak.tar.gz
eg: tar -jcvf bak.tar.bz2bak.tar或 bzip2 bak.tar 使用bzip2将打包文件bak.tar压缩为bak.tar.bz2
eg: tar -rvf bak.tar /etc/password 将/etc/password追加文件到bak.tar中(r)
eg:tar -cjvf test.tar.bz2test生成test.tar.bz2的压缩文件
eg:tar -xjf test.tar.bz2解压
最常用:targzip
tar –zcvf 压缩
tar –zxvf 解压
补充:
1 , 文件路径,压缩包带文件路径
2,源文件是保留的 , 不会被删除
**shutdown**[选项] 时间
选项: -c: 取消前一个关机命令
-h:关机
-r:重启
eg:
shutdown -hnow立即关机 shutdown-h20:30 定时关机
其他关机命令 haltpoweroffinit 0
其他重启命令
**reboot**重启系统 reboot -h now立即重启
init 6
注意:生产环境中,关机命令和重启命令谨慎执行 。
善于查看man help等帮助文档
利用好Tab键自动补全
掌握好一些快捷键
ctrlc(停止当前进程)
ctrlz挂起当前进程,放后台
ctrlr(查看命令历史) history
ctrll(清屏,与clear命令作用相同)
方向箭头上 下 可以查看执行过的命令
ctrla 行首 ctrle 行尾
ctrlk 清除 ctrlw 清除单词
vim/vi是Unix / Linux上最常用的文本编辑器而且功能非常强大 。
只有命令,没有菜单 。
《大碗》编辑器版
周围的同事不是用VI就是Emacs,你要是用UltraEdit都不好意思跟人家打招呼...什么插件呀、语法高亮呀、拼写检查呀,能给它开的都给它开着 , 就是一个字:酷!你说这么牛X的一东西,怎么着学会也得小半年吧 。半年?。咳朊哦荚蹲拍兀∧苎Щ嵋贫獗昃筒淮砹? ,你还别说耗不起,就这还是左右移动?。。?
:
[图片上传失败...(image-a08366-1624438708894)]
命令模式:又称一般模式
编辑模式:又称底行模式,命令行模式
|
命令
|
作用
|
|
a
|
在光标后附加文本
|
|
A(shifta)
|
在本行行末附加文本行尾
|
|
i
|
在光标前插入文本
|
|
I(shift i)
|
在本行开始插入文本 行首
|
|
o
|
在光标下插入新行
|
|
O(shift o)
|
在光标上插入新行
|
|
命令
|
作用
|
|
:set nu
|
设置行号
|
|
:set nonu
|
取消行号
|
|
gg
G
|
到第一行
到最后一行
|
|
nG
|
到第n行
|
|
:n
|
到第n行
|
|
命令
|
作用
|
|
:w
|
保存修改
|
|
:w new_filename
|
另存为指定文件
|
|
:wa.txt
|
内容追加到a.txt文件中 文件需存在
|
|
:wq
|
保存修改并退出
|
|
shift zz(ZZ)
|
快捷键,保存修改并退出
|
|
:q!
|
不保存修改退出
|
|
:wq!
|
保存修改并退出(文件所有者可忽略文件的只读属性)
|
不保存并退出:
1, 有修改,但是修改后的内容是不保存的
2,有突发情况,导致窗口退出 。修改文件之后,直接删除同名的.swp文件
|
命令
|
作用
|
|
x
|
删除光标所在处字符 nx 删除光标所在处后n个字符
|
|
dd
|
删除光标所在行,ndd删除n行
|
|
:n1,n2d
|
删除指定范围的行(eg :1,3d 删除了123这三行)
|
|
dG
|
删除光标所在行到末尾的内容
|
|
D
|
删除从光标所在处到行尾
|
|
命令
|
作用
|
|
yy、Y
|
复制当前行
|
|
nyy、nY
|
复制当前行以下n行
|
|
dd
|
剪切当前行
|
|
ndd
|
剪切当前行以下n行
|
|
p、P
|
粘贴在当前光标所在行下或行上
|
|
命令
|
作用
|
|
r
|
取代光标所在处字符
|
|
R(shiftr)
|
从光标所在处开始替换字符,按Esc结束
|
|
u
|
undo,取消上一步操作
|
|
ctrl r
|
redo,返回到undo之前
|
|
命令
|
作用
|
|
/string
|
向后搜索指定字符串 搜索时忽略大小写 :set ic
|
|
?string
|
向前搜索指定字符串
|
|
n
|
搜索字符串的下一个出现位置,与搜索顺序相同
|
|
N(Shiftn)
|
搜索字符串的上一个出现位置,与搜索顺序相反
|
|
:%s/old/new/g
|
全文替换指定字符串
|
|
:n1,n2s/old/new/g
|
在一定范围内替换指定字符串
|
% 指全文,s 指开始,g 指全局替换
eg: :41,44/yang/lee/c 从41行到44行 , 把yang替换为lee,询问是否替换
eg: :41,44/yang/lee/g 同上,不询问 , 直接替换
使用替换命令来添加删除注释
:% s/^/#/g 来在全部内容的行首添加 # 号注释
:1,10 s/^/#/g 在1~10 行首添加 # 号注释
vi里面怎么查命令??
:!which cp
vi里面怎么导入命令的结果?
:r !which cp
v可视字符模式
V****(shift v)可视行模式,选择多行操作
**ctrl v **可视块模式(列模式),操作列
I或者O进入插入模式 。
1,图形化界面
2 , setup 命令虚拟界面
3,修改配置文件(以网络方式为NAT示例)
vi /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.2.129
NETMASK=255.255.255.0
GATEWAY=192.168.2. 2#网段2任意,IP地址2固定,网段为vmnet8的设置的IP网段
DNS1=114.114.114.114
DNS2=8.8.8.8
重启网络生效:
service network restart
命令路径:/bin/ping 执行权限:所有用户
作用:测试网络的连通性
语法:ping 选项 IP地址
-c 指定发送次数
ping 命令使用的是icmp协议,不占用端口
eg: # ping -c 3 127.0.0.1
英文:interface configure 命令路径:/sbin/ifconfig 执行权限:root
作用:查看和设置网卡网络配置
语法:ifconfig [-a] [网卡设备标识]
-a:显示所有网卡信息
ifconfig [网卡设备标识] IP地址修改ip地址
英文:network statistics 命令路径:/bin/netstat 执行权限:所有用户
作用:主要用于检测主机的网络配置和状况
-aall显示所有连接和监听端口
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 使用数字方式显示地址和端口号
-l (listening) 显示监控中的服务器的socket
eg:# netstat -tlnu查看本机监听的端口
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
协议 待收数据包待发送数据包 本地ip地址:端口 远程IP地址:端口
netstat –antpl
临时生效:
hostname 主机名
[图片上传失败...(image-ceed36-1624438708893)]
永久生效:修改配置文件
vi /etc/sysconfig/network
[图片上传失败...(image-2b9d9e-1624438708893)]
修改主机名和ip地址之间的映射关系
vi /etc/hosts
192.168.2.120 node-1.edu.cn node-1
可配置别名
[图片上传失败...(image-ec86cf-1624438708893)]
进程和程序的区别:
1、程序是静态概念,本身作为一种软件资源长期保存;而进程是程序的执行过程,它是动态概念,有一定的生命期,是动态产生和消亡的 。
2、程序和进程无一一对应关系 。一个程序可以由多个进程共用;另一方面,一个进程在活动中有可顺序地执行若干个程序 。
进程和线程的区别:
进程: 就是正在执行的程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源 。
线程: 轻量级的进程;进程有独立的地址空间 , 线程没有;线程不能独立存在 , 它由进程创建;相对讲,线程耗费的cpu和内存要小于进程 。
进程管理的作用?
判断服务器的健康状态
查看系统所有的进程
杀死进程
作用:查看系统中的进程信息
语法:ps [-auxle]
常用选项
查看系统中所有进程
ps应用实例 # ps -u or ps -l查看隶属于自己进程详细信息
作用: 查看当前进程树
语法:pstree [选项]
-p 显示进程PID
-u 显示进程的所属用户
作用:查看系统健康状态
显示当前系统中耗费资源最多的进程,以及系统的一些负载情况 。
语法:top [选项]
-d 秒数 , 指定几秒刷新一次 , 默认3秒(动态显示)
作用:关闭进程
语法:kill [-选项] pId
kill -9 进程号(强行关闭) 常用
kill -1 进程号(重启进程)
添加用户
语法:useradd [选项] 用户名
修改密码命令
语法:passwd [选项] [用户名]
用户密码:生产环境中,用户密码长度8位以上,设置大小写加数字加特殊字符,要定期更换密码 。
ys^h_L9t
删除用户
-r 删除账号时同时删除宿主目录(remove)
作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息 。看剩余空间
语法:df [-hkam] [挂载点]
-h(human-readable)根据磁盘空间和使用情况 以易读的方式显示 KB,MB,GB等 -k以KB 为单位显示各分区的信息,默认
-M 以MB为单位显示信息 -a显示所有分区包括大小为0 的分区
作用:用于查看文件或目录的大?。ù排淌褂每占洌?
语法:du [-abhs] [文件名目录]
-a 显示子文件的大小
-h以易读的方式显示 KB,MB,GB等
-s summarize 统计总占有量
eg:
du -a(all) /home显示/home 目录下每个子文件的大小,默认单位为kb
du -b /home以bytes为单位显示/home 目录下各个子目录的大小
du -h /home 以K,M,G为单位显示/home 文件夹下各个子目录的大小
du -sh /home以常用单位(K,M,G)为单位显示/home 目录的总大小 -s summarize
df命令和du命令的区别:
df命令是从文件系统考虑的,不仅考虑文件占用的空间,还要统计被命令或者程序占用的空间 。
du命令面向文件,只计算文件或目录占用的空间 。
作用:查看内存及交换空间使用状态
语法: free [-kmg]
选项:
-k:以KB为单位显示,默认就是以KB为单位显示
-m:以MB为单位显示
-g:以GB为单位显示
清理缓存命令:
echo 1/proc/sys/vm/drop_caches
Linux中if-else条件判断语句在shell中的条件判断语句格式为:
其中elif和else不是必须的linux条件判断命令,如果只需判断一次,那么if...fi即可 。值得注意的是if后面中括号[]中的语句[的后面和]的前面必须要有空格 。
下面通过判断大小和文件是否存在看一下判断语句的用法:
-gt 大于 (greater than)linux条件判断命令;
-lt 小于(less than);
-eq 等于(equal);
-ne 不等于(not equal);
-ge 大于等于(greater equal);
-le 小于等于(less equal) 。
linux里面if [ “result” != “ “ ]判断作用是什么?题主linux条件判断命令你好,
先说作用再分析.
作用: 判断 != 两边的字符串是否不相等, 即判断"result"还" "是否不相等.
但是光说作用了,其实对于实际使用还是没有太大帮助.
-----
分析:
上面是shell脚本中,if表达式的一个最基本的结构,3个红框框选的部分是if表达式中必须要有的语法规定的部分.
条件表达式 和 中间一堆语句 是我们要自定义的.
而意思也很好理解, 当 条件表达式 成立,则执行中间那一堆语句.
而条件表达式部分,一般是使用test命令来实现,linux条件判断命令你代码中的[]其实是test命令的一种表现形式,也就是说:
if test "result" != " "与 if [ "result" != " " ] 它俩是一个玩意儿.
-----
所以为了好理解,我们就用第一种形式,if test "result" != " ",去理解.
test是测试的意思, 测试的是啥呢? 就是test后面的"result" 与" "是否 !=,而 !=表示不相等,因此测试的是"result" 与 " " 是否不相等,如果不相等则成立,就会执行if语句块了,而就题主问题中的if [ "result" != " " ],肯定是成立的,因此相应if语句块也会被执行.
-----
再举一个小例子,题主可以试一下:
执行之后,题主可以将"b"换成"a",再执行一下看看应该什么都不会输出,因为"a" != "a"这个条件不成立,所以不会执行相应的echo语句.
-----
扩展阅读:
具体test都能判断哪些条件呢?具体要看一下man test中的说明了,下图是手册里的部分关于支持哪些判断的一个截图:
截图中红框框选的就是本题中用到的!=,用来判断两个字符串是否不相等.
=====
希望可以帮到题主, 欢迎追问.
Linux里面if -s命令作用是什么?字符串判断
str1 = str2当两个串有相同内容、长度时为真
str1 != str2当串str1和str2不等时为真
-n str1当串的长度大于0时为真(串非空)
-z str1当串的长度为0时为真(空串)
str1当串str1为非空时为真
2、数字的判断
int1 -eq int2两数相等为真
int1 -ne int2两数不等为真
int1 -gt int2int1大于int2为真
int1 -ge int2int1大于等于int2为真
int1 -lt int2int1小于int2为真
int1 -le int2int1小于等于int2为真
3 文件的判断
-r file 用户可读为真
-w file 用户可写为真
-x file 用户可执行为真
-f file 文件为正规文件为真
-d file 文件为目录为真
-c file 文件为字符特殊文件为真
-b file 文件为块特殊文件为真
-s file 文件大小非0时为真
-t file 当文件描述符(默认为1)指定的设备为终端时为真
3、复杂逻辑判断
-a与
-o 或
!非
EXAMPLE:
[ -a FILE ]如果 FILE 存在则为真 。
[ -b FILE ]如果 FILE 存在且是一个块特殊文件则为真 。
[ -c FILE ]如果 FILE 存在且是一个字特殊文件则为真 。
[ -d FILE ]如果 FILE 存在且是一个目录则为真 。
[ -e FILE ]如果 FILE 存在则为真 。
[ -f FILE ]如果 FILE 存在且是一个普通文件则为真 。
[ -g FILE ]如果 FILE 存在且已经设置了SGID则为真 。
[ -h FILE ]如果 FILE 存在且是一个符号连接则为真 。
[ -k FILE ]如果 FILE 存在且已经设置了粘制位则为真 。
[ -p FILE ]如果 FILE 存在且是一个名字管道(F如果O)则为真 。
[ -r FILE ]如果 FILE 存在且是可读的则为真 。
[ -s FILE ]如果 FILE 存在且大小不为0则为真 。
[ -t FD ]如果文件描述符 FD 打开且指向一个终端则为真 。
[ -u FILE ]如果 FILE 存在且设置了SUID (set user ID)则为真 。
[ -w FILE ]如果 FILE 如果 FILE 存在且是可写的则为真 。
[ -x FILE ]如果 FILE 存在且是可执行的则为真 。
[ -O FILE ]如果 FILE 存在且属有效用户ID则为真 。
[ -G FILE ]如果 FILE 存在且属有效用户组则为真 。
[ -L FILE ]如果 FILE 存在且是一个符号连接则为真 。
[ -N FILE ]如果 FILE 存在 and has been mod如果ied since it was last read则为真 。
[ -S FILE ]如果 FILE 存在且是一个套接字则为真 。
[ FILE1 -nt FILE2 ]如果 FILE1 has bee more recently than FILE2, or 如果 FILE1 exists and FILE2 does not则为真 。
[ FILE1 -ot FILE2 ]如果 FILE1 比 FILE2 要老, 或者 FILE2 存在且 FILE1 不存在则为真 。
[ FILE1 -ef FILE2 ]如果 FILE1 和 FILE2 指向相同的设备和节点号则为真 。
[ -o OPTIONNAME ]如果 shell选项 “OPTIONNAME” 开启则为真 。
[ -z STRING ]“STRING” 的长度为零则为真 。
[ -n STRING ] or [ STRING ]“STRING” 的长度为非零 non-zero则为真 。
[ STRING1 == STRING2 ]如果2个字符串相同 。“=” may be used instead of “==” for strict POSIX compliance则为真 。
[ STRING1 != STRING2 ]如果字符串不相等则为真 。
【linux条件判断命令 linux的if判断】关于linux条件判断命令和linux的if判断的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读