记录了一些linux工作中常用的命令,大神请直接路过
本来放在记事本当中,现在就和大家分享一下吧,这是第一部分。
1.定时执行命令,监控结果
watch的原理就是重复的执行后面的命令,默认的时间间隔是2秒.
如watch -d -n 10 cat /etc/syslog.conf
*********************************************************************************************************************
2.kill多个进程
ps -ef|grep LOCAL=NO|grep -v grep|cut -c 9-15|xargs kill -9
管道符“|”用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。下面说说用管道符联接起来的
几个命令:
ps - ef”是Red Hat 里查看所有进程的命令。这时检索出的进程将作为下一条命令“grep LOCAL=NO”的输入。
“grep LOCAL=NO”的输出结果是,所有含有关键字“LOCAL=NO”的进程,这是Oracle数据库中远程连接进程的共同特点。
“grep -v grep”是在列出的进程中去除含有关键字“grep”的进程。
“cut -c 9-15”是截取输入行的第9个字符到第15个字符,而这正好是进程号PID。
“xargs kill -9”中的xargs命令是用来把前面命令的输出结果(PID)作为“kill -9”命令的参数,并执行该令。
“kill -9”会强行杀掉指定进程,这样就成功清除了oracle的所有远程连接进程。其它类似的任务,只需要修改“grep LOCAL=NO”中的关键字部分就可以了。
ps -ef|grep /usr/local/apache-tomcat-document/|grep -v grep|cut -c 9-15|xargs kill -9
*********************************************************************************************************************
3.背景色调节
前景色:30黑 31红 32绿 33黄 34蓝 35紫 36青 37白
背景色:40黑 41红 42绿 43黄 44青 45蓝 46青 47白
#前景颜色各数字是对应背景颜色减去10.
命令: echo -e "\033[background_number;foreground_numberm"
如设置白色背景黑色前景字体应该是 echo -e "\033[47;30m"
background_number=背景色
foreground_number=前景色
m要紧跟foreground_number,没有空格。
(说是白色背景,黑色字体。字体颜色我同意,可背景色咋看也不像是白色呀?o(∩_∩)o...)
\033 即退出键<esc>的ascii码(27),所以上面的命令也可写成如下形式
echo "^[[47;30m" 其中的“^[”是先按ctrl-V,然后再按<esc>键(就是键盘左上角的键)产生的。
这种方法只能暂时改变一下,logout一下就没有了。不过可以vi /root/.bashrc, 在后面加上刚才的命令。
echo -e '\033[47;30m'
*********************************************************************************************************************
4. 编程工具
nerdtree
nerdcomment
minibuf
ctrl+] 找相关函数
ctrl+T 回到查找之前的状态
,+N文件列表
,+t 函数框
*********************************************************************************************************************
5.使用indent命令来将program自动调整C代码的缩进风格。
$indent –st hello.c
自动缩进:
打入":set cindent"即可。
语法加亮:
修改/etc/vimrc文件。去掉"syntax on"前面的引号。
vim末行模式下输入:"syntax on"。
.在终端下使用vim进行编辑时,默认情况下,编辑的界面上是没有显示行号、语法高亮度显示、智能缩进等功能的。为了更好的在vim下进行工作,需要手动设置一个配置文件:.vimrc。在启动vim时,当前用户根目录下的.vimrc文件会被自动读取,该文件可以包含一些设置甚至脚本,所以,一般情况下把.vimrc文件创建在当前用户的根目录下比较方便,即创建的命令为:
$vi ~/.vimrc设置完后
$:x 或者 $wq进行保存退出即可。
下面给出一个例子,其中列出了经常用到的设置,详细的设置信息请参照参考资料:
“双引号开始的行为注释行,下同
“去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限
set nocompatible
“显示行号
set nummber
“检测文件的类型
filetype on
“记录历史的行数 set history=1000
“背景使用黑色
set background=dark
“语法高亮度显示
syntax on
“下面两行在进行编写代码时,在格式对起上很有用;
“第一行,vim使用自动对起,也就是把当前行的对起格式应用到下一行;
“第二行,依据上面的对起格式,智能的选择对起方式,对于类似C语言编
“写上很有用
set autoindent
set smartindent
“第一行设置tab键为4个空格,第二行设置当行之间交错时使用4个空格
set tabstop=4
set shiftwidth=4
“设置匹配模式,类似当输入一个左括号时会匹配相应的那个右括号
set showmatch
*********************************************************************************************************************
6.以秒的形式显示日期
date -d '1 days agO' +%s
*********************************************************************************************************************
7.找文件
find find -name april* 在当前目录下查找以april开始的文件
find -name april* fprint file 在当前目录下查找以april开始的文件,并把结果输出到file中
find /home -size +512k + 查大于512k的文件, - 查小于512k的文件
*********************************************************************************************************************
8.查看进程
查看进程:ps aux
查看特定进程如apache ps aux | grep httpd
********************************************************************************************************************
9.开机登录执行脚本命令 与 自定义命令
/root/.bashrc
写完之后source执行。
alias zlw='cd /home/zlw'
********************************************************************************************************************
10.手动释放内存
通过调整/proc/sys/vm/drop_caches来释放内存。
步骤:
sync//将未写入系统缓冲区的内容写到磁盘中
echo 3>/proc/sys/vm/drop_caches //1 free pageache ,2 free dentries and inodes,3 free pagecache,dentries and inodes.
********************************************************************************************************************
11.多行注释
ctrl+v选择多行
大写I
插入你需要的字符(串)
插入完之后Esc
********************************************************************************************************************
12. home文件语言转换
ubuntu安装好中文环境后,主目录中的文件夹将使用中文名,若切换到纯字符界面下会显示乱码,改为英文命名可使用如下命令:
export LANG=en_US
xdg-user-dirs-gtk-update
改回中文命名:
export LANG=zh_CN
xdg-user-dirs-gtk-update
********************************************************************************************************************
13.重定向
分解这个组合:“>/dev/null 2>&1” 为五部分。
1:> 代表重定向到哪里,例如:echo "123" > /home/123.txt
2:/dev/null 代表空设备文件
3:2> 表示stderr标准错误
4:& 表示等同于的意思,2>&1,表示2的输出重定向等同于1
5:1 表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于 "1>/dev/null"
因此,>/dev/null 2>&1也可以写成“1> /dev/null 2> &1”
********************************************************************************************************************
14.压缩解压
# tar -cjf all.tar.bz2 *.jpg
这条命令是将所有.jpg的文件打成一个tar包,并且将其用bzip2压缩,生成一个 bzip2压缩过的包,包名为all.tar.bz2 ,-c是表示产生新的包 ,-f指定包的文件名,-j有bz2属性的 。
# tar -xjf all.tar.bz2
这条命令是将上面产生的包解开。-x是解开的意思,
********************************************************************************************************************
15.ssh 无密码登录
@灵犀志趣
执行方式 sh nopasswd USER REMOTE_HOST
执行此脚本前,请确认:
本机上已有 id_dsa.pub ,若无。 使用命令 ssh-keygen -t dsa 获得。
远程机上登录用户家目录下,已经有 .ssh 文件夹,若无创建之。
$ cat nopasswd
#!/bin/sh
scp ~/.ssh/id_dsa.pub $1@$2:~/
ssh $1@$2 " touch ~/.ssh/authorized_keys ; cat ~/id_dsa.pub >> ~/.ssh/authorized_keys; chmod 644 ~/.ssh/authorized_keys; exit"