Shell
tterminator
let the code say
展开
-
lsof根据端口号查找占用进程号及根据进程号查找占用端口号
一、根据端口号查找占用进程号lsof -i :端口号例如:lsof -i :8089查看进程详细信息ps -ef | grep 22352二、根据进程号查找占用端口号1、查找指定进程占用的端口号lsof -p 22352 | grep LISTEN2、查找所有进程占用的端口号sudo lsof | grep LISTEN三、参考资料https://blog.csdn.net/glw0223/article/details/86737591...原创 2021-01-26 23:00:40 · 2356 阅读 · 0 评论 -
shell if/date/echo换行/数组遍历
一、脚本示例echo -e "\n"day=`date -d '-1 days' +%Y%m%d` #获取日期echo "day="$dayecho -e "\n" #换行existFlag="NO"confName=""files=`ls -al` #创建数组for var in ${files[*]}; #数组遍历do if [ "$var" = "config" ];then原创 2016-10-21 16:20:01 · 2925 阅读 · 0 评论 -
linux iostat
一、使用背景有时候使用程序在服务器上拷贝比较大的文件目录时,会遇到比较慢的情况,使用jstack命令查看进程堆栈时发现程序卡在拷贝文件夹的代码上,这时使用iostat监控磁盘的读写情况有助于分析问题原因。二、使用df确定磁盘名线上服务器一般会在dev下安装有很多块硬盘,然后再挂载到/根目录下的某个目录上,我们平时使用的路径名是/根目录下的某个目录,但是iostat显示的确是dev下的磁盘名,这时可以原创 2017-01-04 21:07:30 · 460 阅读 · 0 评论 -
Mac du笔记
du命令显示文件或者文件夹的大小:当du不带任何参数时,会递归显示当前目录下的所有文件和子文件夹的大小。例如以eclipse目录为例(节选):8 ./configuration/.settings16 ./configuration/org.eclipse.core.runtime/.manager3344 ./configuration/org.eclipse.core.runt原创 2015-09-04 20:24:10 · 9586 阅读 · 1 评论 -
ps -ef 输出信息详解
一、命令语法:ps -ef | grep top这里以top进程为例。二、命令执行结果|—–|:—:|—:| |1 |UID | 用户标识ID| |2| PID | 进程ID| |3.|PPID | 父进程ID| |4 |C | CPU占用率| |5 |STIME| 进程开始时间| |6 |TTY | 启动此进程的TTY(终端原创 2017-01-17 13:41:04 · 12341 阅读 · 3 评论 -
awk积累(内置变量、指定分隔符、判断纯小数、数字相加)
一、awk内置变量 ARGC 命令行参数个数 ARGV 命令行参数排列 ENVIRON 支持队列中系统环境变量的使用 FILENAME awk浏览的文件名 FNR 浏览文件的记录数 FS 设置输入域分隔符,等价于命令行 -F选项 NF 浏览记录的域的个数 NR 已读的记录数 OFS 输出域分隔符 ORS 输出记原创 2017-03-28 18:42:10 · 4187 阅读 · 0 评论 -
shell 变更文件所属的用户和组
chown + 用户名:组名 + 文件名 查看用户所属的组: groups + 用户名原创 2017-03-24 20:59:31 · 3348 阅读 · 0 评论 -
windows查看端口占用命令
仅供学习使用,转载自http://www.cnblogs.com/allenblogs/archive/2010/06/25/1765055.html开始–运行–cmd 进入命令提示符 输入netstat -aon 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选”查看”-“选择列”经常,我们在启动应用的时候发现系统需要的端转载 2017-04-12 19:15:36 · 847 阅读 · 0 评论 -
Linux文件删除后磁盘空间没有释放
文件删了磁盘空间没释放原因可能是因为删除了某个正在被写入的文件解决1)删除后,重启写入文件的应用进程; 2)干掉进程:用命令 sudo /usr/sbin/lsof|grep deleted 查看空间没释放的文件,找到进程名称、pid,杀掉重启进程删除正在写的文件可以用 cat /dev/null > filename或者bash−c原创 2018-01-28 22:58:39 · 1916 阅读 · 0 评论 -
mac iterm2 + zsh + oh-my-zsh + agnoster
一、效果图二、iterm2安装前往iterm2官网下载三、zsh安装1、zsh是脚本的一种,支持标准的shell,和bash相比有强大的自动补全、错误提示等功能。2、mac中默认是已经安装了zsh的,只是默认没有使用。查看系统中有没有安装zsh,可以执行如下命令:cat /etc/shells得到如下执行结果: 3、切换使用zsh...原创 2018-03-29 00:23:10 · 3496 阅读 · 0 评论 -
Java执行shell脚本文件完整代码
一、背景最近要下线一台历史遗留的物理机,在整理该机的crontab任务时,发现有不少纯shell脚本形式的定时任务,决定使用Java写一个执行shell脚本文件的通用工具类。二、实现方式Java执行shell脚本文件共有两种方式,两种方式的共同点均是创建独立的process执行脚本文件。方式1:通过Runtime创建processProcess process = Runt...原创 2018-08-30 20:29:03 · 31687 阅读 · 0 评论 -
shell脚本调试
一、背景平时在写比较长的脚本代码时,变量比较多,如果都要echo,就比较麻烦了,本篇介绍一种专用的bash脚本调试器BASH Debugger。该调试器需要单独安装,下载链接。本人安装的环境如下: 系统版本:macOS 10.13.3 (17D102) bash版本:GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin17...原创 2018-08-30 23:50:32 · 387 阅读 · 0 评论 -
linux shell pwdx
一、用途打印指定进程号启动时的工作目录。二、语法pwdx + 指定进程号eg:查看启动Tomcat容器时的目录通过sudo jps -l或者sudo ps -ef找到Tomcat进程号1570。通过sudo pwdx 1570得到如下结果:$sudo pwdx 15701570: /home/admin/your-web-folder/target注意这里是启动Tomc...原创 2019-04-05 21:23:56 · 660 阅读 · 0 评论 -
linux shell route
一、背景最近在线上不同的机房扩容机器时,对同一个域名D的访问,在机房A扩容出来的主机HA可以访问,但是在机房B扩容出来的主机HB却无法访问。二、问题排查1、dig排查在主机HA上dig域名D得到IP:ip_d_ha在主机HB上dig域名D得到IP:ip_d_hb2、route路由表查看在主机HA上执行route -n,发现域名D对应的IP地址ip_d_ha所在的网段不在主机HA的路由...原创 2019-06-01 23:02:38 · 539 阅读 · 0 评论 -
SecureCRT跳板机及常用配置
一、软件下载下载链接二、跳板机会话创建及登录服务器动作设置跳板机回话创建 此时跳板机的回话已经创建完毕;跳板机登录线上服务器动作设置(右键刚刚创建的跳板机会话–>属性) 三、颜色设置上图中标号: 1. 设置窗口背景颜色:E, S, L = 128,240,25 2. 设置压缩文件颜色:E, S, L = 40,240,60 5. 设置目录颜色:E, S, L = 160,原创 2016-12-23 00:05:28 · 13069 阅读 · 0 评论 -
shell替换一个或多个空格为逗号
一、原始文本word.txt内容a c b dd b c aa c d bc a r sd s g h二、shell脚本cat word.txt | sed 's/[ ][ ]*/,/g'脚本说明:s代表替换指令;每个[ ]都包含有一个空格;*号代表0个或多个;g代表替换每行的所有匹配; 还有一种方式,但该方式在mac下替换原创 2016-10-11 23:02:30 · 65558 阅读 · 2 评论 -
Mac 设置环境变量、查看/添加PATH环境变量
仅供学习使用,原文见http://elf8848.iteye.com/blog/1582137一、Mac 启动加载文件位置(可设置环境变量)-------------------------------------------------------(1)首先要知道你使用的Mac OS X是什么样的Shell,使用命令echo $SHELL如果输出的是:csh或者是tc转载 2015-10-24 11:41:33 · 4995 阅读 · 0 评论 -
mac install brew
最近刚把开发平台从windows迁移到Mac,发现有些东西也是需要根据自己需要安装的,所以搜了下,发现网上各路大神推荐brew,看完介绍,感觉不错,搞起安装(这里说下心得,在Mac app store中有很多常用的软件都找不到,例如大名鼎鼎的eclipse,sublime text等,其实是个人想的太狭隘了,以为在Mac上的安装的软件都是要从app store中下载,其实不然,有网友这样说:在原创 2015-08-10 21:09:04 · 9532 阅读 · 0 评论 -
tail实时滚动显示log文件内容
Linux shell中有一个tail命令,常用来显示一个文件的最后n行文档内容但更多情况下,我们要在服务器端运行程序,并且需要实时监控运行日志,这时候有什么办法实时滚动显示log文件内容?这里可以利用tail命令加参数f实现,具体用法如下:tail -f ***.log参数说明-f, --follow[={name|descriptor}]:output appe原创 2015-04-16 16:33:55 · 71287 阅读 · 0 评论 -
mac查看端口号占用
命令: lsof -i tcp:port 查看该端口被什么程序占用,并显示PID。 port根据自己的情况替换成具体端口号,例如8081。原创 2016-06-07 09:34:26 · 3285 阅读 · 1 评论 -
mac下使用terminal open命令打开文件(PDF)
这里以在terminal中用命令打开PDF为例:在Mac中,PDF默认打开方式为preview,但操作习惯和平时使用的国产PDF reader不太一样!完成在terminal中用命令打开PDF只需要两步:步骤1:修改PDF文件的默认打开方式,这个百度一下就有很多,例如http://jingyan.baidu.com/article/b87fe19eb386f052183568a2.ht原创 2015-09-04 11:29:28 · 22098 阅读 · 0 评论 -
linux 查看内核版本及发行版本
一、查看Linux内核版本命令: uname -a 执行结果: Linux version 2.6.9-22.ELsmp (bhcompile@crowe.devel.redhat.com) (gcc version 3.4.4 20050721 (Red Hat 3.4.4-2)) #1 SMP Mon Sep 19 18:00:54 EDT 2005二、查看Linux发行版本命令: ls原创 2016-07-20 21:12:36 · 2826 阅读 · 0 评论 -
awk模式开关中多条件判断
一、文本内容测试用文本text内容如下:1 zhao zhao2 qian qian3 sun sun4 li li二、脚本内容测试脚本(AWK语法和C语言类似)内容如下: 其中第一个awk中模式开关条件判断为: $2!="zhao" && $2!="qian"; 第二个awk中模式开关条件判断为:$2=="zhao" || $2=="qian"。#测试awk模式开关中两条件&&ech原创 2016-08-16 23:34:31 · 40731 阅读 · 0 评论 -
mac terminal及vim中文乱码
编辑.bash_profile文件,添加如下配置: export LANG=”zh_CN.UTF-8” export LC_ALL=”zh_CN.UTF-8”原创 2016-07-02 12:12:37 · 6742 阅读 · 1 评论 -
vim中空格替换为换行及删除换行
一、把空格替换为换行:% s/ /\r/g二、把空行删除:g/^$/d原创 2016-06-08 09:20:24 · 53231 阅读 · 0 评论 -
apt-get -f install 修复依赖损坏
在linux中使用命令 apt-get install 或 dpkg -i 时有时候会出现以下依赖错误:原创 2014-11-11 11:39:18 · 29283 阅读 · 1 评论 -
mac vim IDE插件安装
一、插件集 本次安装的插件集共有16种,这些插件足以调出IDE的界面。慢慢摸索吧!Plugin 'VundleVim/Vundle.vim' Plugin 'altercation/vim-colors-solarized' Plugin 'vim-airline/vim-airline' Plugin 'vim-airline/vim-airline-themes' Plugin '原创 2016-07-07 22:25:29 · 6833 阅读 · 4 评论 -
tac从后往前查看文件
当日志文件log.log很长,但又要按内容从后往前查看时,可以使用如下命令:tac log.log | more可以采用如下方式来记忆该命令:cat log.log | more是从前往后查看文件内容,而tac命令是cat命令的字符串反转形式,所以其执行结果也和cat执行结果相反。原创 2016-08-10 18:10:09 · 10313 阅读 · 2 评论 -
日常shell快捷操作(MySQL登录,grep等)
MySQL登录mysql -h127.0.0.1 -uroot -pdatamining123 --port=3306其中: -h指定MySQL主机IP -u指定MySQL登录用户名 -p指定MySQL登录密码 --port指定MySQL端口号常用shell命令1.在当前目录中递归查找包含指定字符串的文件,并打印出该文件中包含该字符串的文本行:grep -R "指定字符串" ./2.在文件中原创 2016-08-12 22:58:26 · 4235 阅读 · 0 评论 -
Linux常用命令(远程拷贝、登录、源码阅读器)
1、拷贝本机/home/administrator/test整个目录至远程主机192.168.1.100的/root目录下scp -r /home/administrator/test/ root@192.168.1.100:/root/2、拷贝单个文件至远程主机scp /home/administrator/Desktop/old/driver/test/test.txt root@原创 2014-11-11 11:33:45 · 1120 阅读 · 0 评论