
shell
kong-kong
记录流水账
展开
-
xshell free for home/school
原创 2021-10-23 21:23:34 · 671 阅读 · 0 评论 -
运行shell脚本提示‘\r’未找到命令
错误提示解决方法原因原因:找到对应报错的行发现都是空行所在行报错;其实是windows下编辑的文件,放在linux下运行,文件格式有问题,需要转换方法1使用dos2unix命令转换# installyum install -y dos2unix方法2编辑器vi/vim打开你需要执行的脚本文件输入 :set fileformat=unix 并回车然后保存退出重新执行脚本,问题就解决了参考文档参考文档...原创 2021-08-30 17:49:48 · 1732 阅读 · 0 评论 -
sed命令
语法man sedsed [OPTION]... {script-only-if-no-other-script} [input-file]...参数说明-n, --quiet, --silent 只显示script处理后的结果-e script, --expression=script 以指定的script来执行-f script-file, --file=script-file 以指定的script文件来执行...原创 2020-08-19 18:50:12 · 320 阅读 · 0 评论 -
file test -n -z等参数
# 注意# [[ 后面要有个空格,否则会报错# ]] 前面要有个空格,否则会报错if [[ -z "${STR1}" ]]; then echo "str1 is null"else echo "str1=$ISNULL"fi-z 参数[ -z STRING ] 判断字符串长度是否为空STR1=STR2=""STR3=''STR4=NULLif [[ -z "${STR1}" ]]; then echo "str1 is null"fiif [[..原创 2020-08-18 16:11:55 · 469 阅读 · 0 评论 -
shell获取当前目录的几种方式
方式1:# 通过pwdDIR=$(cd $(dirname $0) && pwd )echo $DIR方式2:# 通过readlinkDIR=$(dirname $(readlink -f $0))echo $DIR原创 2020-08-18 11:17:15 · 1171 阅读 · 0 评论 -
linux命令(readlink)
# 用来找出符号链接所指向的位置readlink /usr/bin/awkreadlink -f /usr/bin/awk没有链接,则不会显示原创 2020-08-18 10:43:30 · 1478 阅读 · 0 评论 -
linux常用命令 (替换、scp、ssh)
替换#当前行 第一个cardservie 替换java :s/cardservice/java#当前行 cardservie 替换java :s/cardservice/java/g#每一行的cardservice 替换java :%s/cardservice/java/gscp#远程file复制到本地scp -r root@192.168.6.17...原创 2018-11-02 23:45:11 · 2179 阅读 · 0 评论 -
Please install `jdk 1.8` and set `JAVA_HOME` environment variables based on that i
问题执行ssh root@172.16.1.202 /hello-parent/restart.sh,后报错Please install `jdk 1.8` and set `JAVA_HOME` or `SHR_JDK_HOME`environment variables based on that installation解决方法在远程机器上执行shell脚本没问题,但用ssh远程调用执行,就出现上面问题;原因JAVA_HOME在配置在远程机器的/etc/profile...原创 2020-08-14 17:37:05 · 1064 阅读 · 0 评论 -
循环
until#!/bin/bashi=1until [ "$i" -eq 10 ]do printf "i=$i \n"; let "i++"done# until 条件不满足的执行while#!/bin/bashi=1while [ "$i" -lt 10 ]do printf "i=$i \n"; ...原创 2019-10-28 23:22:44 · 204 阅读 · 0 评论 -
不出现grep --color=auto
ps -ef|grep aaa会显示 root 29701 14626 0 16:46 pts/2 00:00:00 grep --color=auto aaaps -ef|grep [a]aa不会显示grep --color=auto aaaps aux |grep [a]aa不会出现grep进程本身,因为此时grep进程的参数是gr...原创 2019-06-10 16:51:58 · 26341 阅读 · 2 评论 -
查找进程,并kill
#!/bin/bashPID=$( ps -ef | grep '[s]pringboot-1.0.jar' | awk '{print $2}' )echo "pid=$PID"if [ -n "$PID" ]; then kill -9 ${PID}fi原创 2019-06-10 16:40:34 · 986 阅读 · 0 评论 -
shell 获取进程号
# Shell最后运行的后台PID(后台运行的最后一个进程的进程ID号)$!# Shell本身的PID(即脚本运行的当前进程ID号$$原创 2019-06-09 22:20:04 · 7656 阅读 · 0 评论 -
shell参数
# 文件名 有路径则包括路径$0# 1-9 $1...$9 以空格分开 大于9 要加大括号 要${10} ${11}$n# 脚本后面跟的总个数 # sh para.sh 1 2 3 则个数为3$## 从第一个参数开始 拼成字符串 空格分隔 1 2 3 4 5$*#$@#当 $* 和 $@ 不被双引号" "包围时,它们之间没有任何区别...原创 2019-03-03 14:26:03 · 1069 阅读 · 0 评论 -
shell dirname basename
# dirname 获取路径# /server/scripts #<==dirname命令的作用是获取脚本的路径dirname /server/scripts/n.sh# n.shbasename /server/scripts/n.sh#!/bin/bashecho `dirname $0`echo `basename $0`dirnam...原创 2019-03-03 14:44:49 · 380 阅读 · 0 评论 -
shell 环境变量
env set unsetdeclare$HOME$PATH$SHELL$UID$USERset命令显示当前shell的变量,包括当前用户的变量;env命令显示当前用户的变量;export命令显示当前导出成用户变量的shell变量。set命令作用主要是显示系统中已经存在的shell变量,以及设置shell变量的新变量值。使用set更改s...原创 2019-03-23 22:47:40 · 423 阅读 · 0 评论 -
awk
$0 表示整个当前行$1 每行第一个字段NF 字段数量变量NR 每行的记录号,多文件记录递增FNR 与NR类似,不过多文件记录不递增,每个文件都从1开始# 根据:分隔awk -F : '{print $1}' /etc/passwd...原创 2019-04-14 23:40:56 · 386 阅读 · 0 评论 -
grep
egrep 相当于 grep -E (扩展正则表达式)#扩展正则表达式grep -E #匹配多个模式grep -e#忽略大小写grep -i#模式匹配整个单词grep -w#匹配整行grep -x#打印不匹配的行grep -v#打印a b 相同的行grep -f a b -n 打印行号-c 打印每个文件匹配的行数-...原创 2019-04-15 00:11:08 · 277 阅读 · 0 评论 -
shell 条件表达式
# " " 也是空if [ -z $1 ]; then echo "$1 is empty string"fi# " " 不为空if [ -z "$1" ]; then echo "$1 is empty string"fi# if elif elseif [ "$1" == "start" ]; then ec...原创 2019-05-06 19:21:32 · 781 阅读 · 0 评论 -
zookeeper.sh 包装zkServer.sh
#!/bin/bashecho 'p[0]='$0echo 'p[1]='$1BASE_PATH=/usr/local/zookeeper/zookeeper-3.4.11/binif [ -z "$1" ]; then echo "$1 is empty string"fiif [ "$1" == "start" ]; then echo "ru...原创 2019-05-06 18:04:29 · 318 阅读 · 0 评论 -
/etc/localtime和/etc/timezone区别
总共有两个文件要修改,修改/etc/localtime使本地时间正确(对应linux的date指令正确),另外还需要修改/etc/timezone使得时区正确(对应Java时间正确)Dockerfile 时区设置RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeRUN echo 'Asia/Shanghai' &...转载 2019-05-07 08:55:58 · 28693 阅读 · 0 评论 -
vi批量缩进 - 批量注释 - vimrc设置
# 批量缩进# 2个空格缩进 按shift < 或者 shift > :set shiftwidth=2# 按tab键 缩进:set tabstop=2进入vi后,点击v进入VISUAL模式,再使用上下箭头选择行,按 shift < 或者 shift > 统一设置# 默认是没有的 新建的vi ~/.vimrc#.vimrc ...原创 2019-05-22 01:06:30 · 746 阅读 · 0 评论 -
yum rpm 命令
cat /etc/shells/etc/yum.repos.d/# 安装历史yum history# 显示仓库列表yum repolist# 那些组yum grouplist# 安装软件包 -y 直接安装yum install -y httpd#升级yum update kernel # 查询包作用yum info httpd#卸载yum -...原创 2019-05-22 17:01:56 · 382 阅读 · 0 评论 -
linux shell 注意点
/dev/null 2>&1# 2>&1 的意思就是将标准错误重定向到标准输出# 这里标准输出已经重定向到了 /dev/null# 那么标准错误也会输出到/dev/null/dev/null 2>&1...原创 2019-06-09 16:01:56 · 237 阅读 · 0 评论 -
shell笔记1
#vi直接调用vimecho "alias vi='vim'" >>/etc/profiletail -1 /etc/profilesource /etc/profile#!/bin/bashhead -1 /etc/init.d/sshdcat /etc/redhat-release加载顺序通常是/etc/profile、~/.bash_profil...原创 2019-03-03 13:48:20 · 223 阅读 · 0 评论