随笔分类 -  Linux

命令/shell脚本
摘要:[toc] 1.需求描述 现存在以下文件列表: 需要只提取出文件名,而不需要后缀名,如:test1、test2 2.实现代码 c [root@localhost logan] for file_name in ;do basename $file_name .txt;done test1 test2 阅读全文
posted @ 2020-03-16 11:42 OLIVER_QIN 阅读(5843) 评论(1) 推荐(0) 编辑
摘要:[toc] 1.常用的文件测试操作符 |常用的文件测试操作符|说明| | | | | d 文件,d的全称是directory|文件存在且为目录则为真| | f 文件,f的全称是file|文件存在且为普通文件则为真| | e 文件,e的全称是exist|文件存在则为真, e不辨别是文件还是目录| | 阅读全文
posted @ 2020-03-13 18:19 OLIVER_QIN 阅读(348) 评论(0) 推荐(0) 编辑
摘要:[toc] 通常,在bash的各种条件结构和流程控制结构中都要进行各种测试,然后根据测试结果执行不同的操作。执行条件测试通常会返回"真"或"假",类似执行命令,返回0是真,返回非0是假。 1.条件测试常用的方法 |条件测试语法|说明| | | | |语法1: |利用test命令进行条, test后有 阅读全文
posted @ 2020-03-13 17:09 OLIVER_QIN 阅读(353) 评论(0) 推荐(0) 编辑
摘要:[toc] 1.使用双小括号条件表达式 打印结果: 2.使用双中括号条件表达式 打印结果: 3.使用单中括号条件表达式 打印结果: 4.使用until命令 打印结果: 点击查看 "【shell】各种括号()、(())、[]、[[]]、{}的使用" 阅读全文
posted @ 2020-03-13 14:45 OLIVER_QIN 阅读(1018) 评论(0) 推荐(0) 编辑
摘要:[toc] 1.脚本运行的相关用法和说明 |用法|说明| | | | | |将脚本放在后台运行(常用方法)| | | 停止执行 当前任务或脚本| | | 暂停执行 当前任务或脚本| | |把当前任务或脚本放到 后台执行 ,此处可以理解为background| | |把当前脚本或任务放到 前台执行 , 阅读全文
posted @ 2020-03-13 11:47 OLIVER_QIN 阅读(1103) 评论(0) 推荐(0) 编辑
摘要:当我们使用ssh连接远程计算机的时候,每次输入ssh -p port user@ip,时间久了感觉很麻烦,每次都得输入user、port、ip,并且这些信息不是很好记忆,所以就有了配置别名 例如现在有服务器环境如下: Centos7服务器:10.0.0.5 Centos7服务器:10.0.0.6 我 阅读全文
posted @ 2020-01-07 21:12 OLIVER_QIN 阅读(454) 评论(0) 推荐(0) 编辑
摘要:现在存在以下环境: 远程服务器:192.168.1.107 用户名:dt 密码:dt123 需要从该服务器上下载文件到本地 1.登录(进入到那个目录登录的 ,文件就会被下载到该文件) ftp 192.168.1.107 输入用户名与密码即可成功登录 2.下载 a) get 格式:get [remot 阅读全文
posted @ 2019-04-09 17:40 OLIVER_QIN 阅读(2099) 评论(0) 推荐(0) 编辑
摘要:整数比较:-eq(equal) 相等-ne(inequality) 不相等-gt(greater than) 大于-lt(less than) 小于-ge(greater equal) 大于或等于-le(less equal) 小于或等于===============================================================================例子... 阅读全文
posted @ 2019-01-18 16:10 OLIVER_QIN 阅读(17694) 评论(0) 推荐(0) 编辑
摘要:1.向脚本传递参数#!/bin/bash#功能:打印文件名与输入参数#作者:OLIVERecho $0 #打印文件名echo $1 #打印输入参数执行结果: 2.在脚本中使用参数#!/bin/bash#功能:输入参数的使用#作者:OLIVERcp $1 $2 #根据输入参数复制文件到指定位置执行结果:3.函数的使用#!/bin/bash#功能:函数的使用#作者:OLIVERrun(){echo "... 阅读全文
posted @ 2019-01-18 15:11 OLIVER_QIN 阅读(548) 评论(0) 推荐(0) 编辑
摘要:圆括号1.单圆括号()①命令组,括号中的命令将会开启一个子shell独立运行;括号中以分号连接,最后一个命令不需要;各命令和括号无需空格Linux:/qins # (var=1;echo $var)1②命令替换,等同于`cmd`,shell将会执行$(cmd)中的命令,将其输出放到原来的命令中Linux:/qins # echo $(date +%Y-%m-%d)2019-01-17③定义数组Li... 阅读全文
posted @ 2019-01-18 10:19 OLIVER_QIN 阅读(2148) 评论(0) 推荐(0) 编辑
摘要:在Linux系统中,&、&&、|、||的用法如下:& 表示任务在后台运行,例如:ping 127.0.0.1>a.txt&&& 表示前一条命令成功才运行后一条命令,例如:cp a.txt a_bak.dat && rm a.txt| 表示管道,上一条命令的输出作为下一条命令的的输入,例如:ps –ef | grep tomcat|| 表示上一条命令失败则执行下一条命令,例如:cat nof... 阅读全文
posted @ 2019-01-17 17:47 OLIVER_QIN 阅读(1537) 评论(0) 推荐(0) 编辑
摘要:一、break、continue、exit、return的区别和对比break n :如果省略n,则表示跳出整个循环,n表示跳出循环的层数continue n:如果省略n,则表示跳过本次循环,忽略本次循环的剩余代码,进入循环的下一次循环,n表示退出到第n层继续循环exit n :退出当前shell,n为上次执行程序的状态返回值。exit 0表示正常退出,exit 1表示非正常... 阅读全文
posted @ 2019-01-16 17:44 OLIVER_QIN 阅读(1774) 评论(0) 推荐(0) 编辑
摘要:在linux系统中有很多的特殊符号,他们具有特殊的意义$# 是传给脚本的参数个数$0 是脚本本身的名字$1 是传递给该shell的第一个参数$2 是传递给该shell的第二个参数$@ 是传递给脚本的所有参数的列表$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个$$ 是脚本运行的当前进程ID号$?是显示最后命令退出的状态,0表示没有错误,其他表示有错误例子:#!/bin... 阅读全文
posted @ 2019-01-16 16:38 OLIVER_QIN 阅读(2024) 评论(0) 推荐(0) 编辑
摘要:有时候,我们害怕别人修改我们创建的文件,或者是误删我们创建的文件,那么我们可以使用下面的方法进行控制即可1.创建不可删除文件Linux:/qinys/oliver # touch test.shLinux:/qinys/oliver # chattr +i test.sh Linux:/qinys/oliver # rm -rf test.sh rm: cannot remove `test.sh... 阅读全文
posted @ 2019-01-15 18:33 OLIVER_QIN 阅读(1110) 评论(0) 推荐(0) 编辑
摘要:Linux的每一个文件都跟多种类型相关联。在这些权限中,我们通常需要和三类权限打交道(用户、用户组以及其他实体)。1.文件权限查看ls –lLinux:/qinys # ls -ltotal 60-rwxr--r-- 1 root root 30 Jan 15 01:46 A.txt-rw-r--r-- 1 root root 30 Jan 15 01:46 B.txt-rw-r--r--... 阅读全文
posted @ 2019-01-15 18:21 OLIVER_QIN 阅读(300) 评论(0) 推荐(0) 编辑
摘要:有时候,我们需要创建一个空目录树,如果给定路径包含目录,那么还必须检查这些目录是否存在;mkdir –p /qinys/oliver/tmp/执行上述命令即可创建长目录,并且有则忽略,无则创建原则。 阅读全文
posted @ 2019-01-15 17:23 OLIVER_QIN 阅读(3555) 评论(0) 推荐(0) 编辑
摘要:使用命令comm可以找出2个文件之间的差异现在有文件如下:Linux:/qinys # cat A.txt applelemononionorangepearLinux:/qinys # cat B.txt grapelemonolivepeartomato找出两个文件之间的差异命令解释(1)sort [文件名1] –o [文件名2] :将文件名1中的内容排序后保存在文件名2的文件中(2)输出的第... 阅读全文
posted @ 2019-01-15 15:15 OLIVER_QIN 阅读(653) 评论(0) 推荐(0) 编辑
摘要:有时候,我们需要生成指定大小的随机文件,比如在学习过程中使用的测试文件。命令:Linux:/qinys # dd if=/dev/zero of=tmp.data bs=500k count=11+0 records in1+0 records out512000 bytes (512 kB) copied, 0.000984981 s, 520 MB/s命令解释:该命令会创建一个大小为500k的... 阅读全文
posted @ 2019-01-15 14:08 OLIVER_QIN 阅读(5129) 评论(0) 推荐(0) 编辑
摘要:在使用Linux的过程中,可能需要将多个文件压缩到一个文件,这样方便复制与移动多文件压缩案例现在有文件列表如下:将文件file_00.txt、file_01.txt、file_02.txt、file_03.txt压缩为文件file.tar.gz以下有4种实现方法:方法一:tar -cvf file.tar.gz file_00.txt file_01.txt file_02.txt file_03... 阅读全文
posted @ 2019-01-14 15:06 OLIVER_QIN 阅读(17823) 评论(0) 推荐(3) 编辑
摘要:1.数组的概念 shell数组就是一个元素集合,它把有限个元素用一个名字来命名,然后用编号对他们分区。这个名字称为数组名,用于区分不同内容的编号称为数组的下标。 数组的设计其实就是为了处理方便,把具有相同类型的若干变量按有序的形势组织起来的一种形势,以减少重复频繁的单独定义。2.数组的定义# 语法:array=(value value1 value3 ...)# 实例:array=(1... 阅读全文
posted @ 2019-01-11 18:20 OLIVER_QIN 阅读(474) 评论(0) 推荐(0) 编辑