Linux工作常用总结

1. 搜索

  在vi和vim中如果打开一个很大的文件,不容易找到对应的内容,可以使用自带的搜索关键字进行搜索定位:

  在vi和vim界面中输入:"/"(反斜杠),之后会出现一个输入框让你输入,当你输入的关键字在文件中存在就会以高亮的形式显示出来,之后按 回车 就确定定位到当前高亮位置,如果不是你要找的,则可以按:"n",意即寻找下一个输入关键字的内容。

2. vim恢复以及乱码问题

(1) 在vi和vim中如果不小心误删除了一些东西,想要恢复怎么办?

首先要退出编辑状态,即按Esc键,之后再按 u 撤销之前的修改的内容。

(2) 在用vi或vim打开一个文件的时候,如果有些地方出现一些特殊符号或是乱码,可以通过以下命令尝试:

vim -b mytest.php(其中-b一般是用来查看对应的二进制文件的)

3. 管道命令,即竖杠-->‘|‘

上面的意思是:将查询出来的内容交给管道后面的命令装饰之后再展示出来

  例如:cat install.log | more (more的意思是将一屏放不下的内容以分页的形式显示)

      ls -l /etc | more

   如果想看上一页的内容,可以通过:Shift + PageUp 来查看

  管道配合grep(过滤)可以达到很好用的组合例如:

  cat -n hello.txt | grep "hello" (查看hello.txt文件内容,并过滤出来带有hello的内容) , -n 表示显示出来第几行的内容

4. find 搜寻文件或目录

  find /home -name hello*        (查找home目录下的文件名或目录为hello的)

  find / -name h?m*                (在跟目录下查找h开头第二个字符是任意的,第三个是m,后面的是任意的字符)

  find / -size +1000000k          (表示在根目录下查询文件大于1000000K的文件)

5 字符串替换命令

  :s/well/good/          替换当前行第一个 well 为 good
  :s/well/good/g        替换当前行所有 well 为 good

  :n,$s/well/good/     替换第 n 行开始到最后一行中每一行的第一个 well 为 good
  :n,$s/well/good/g     替换第 n 行开始到最后一行中每一行所有 well 为 good
  n 为数字,若 n 为 .,表示从当前行开始到最后一行

  :%s/well/good/      (等同于 :g/well/s//good/) 替换每一行的第一个 well 为 good
  :%s/well/good/g    (等同于 :g/well/s//good/g) 替换每一行中所有 well 为 good
  特殊符号转义:可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
  :s#well/#good/#        替换当前行第一个 well/ 为 good/ 
  :%s#/usr/bin#/bin#g  可以把文件中所有路径/usr/bin换成/bin 

6. 重定向命令

  ls  -l  /etc/       希望

  ls  -l  /etc > /home/myback.txt     (覆盖重定向) 把显示的结果覆盖到/home/myback.txt中去

  ls  -l  /etc >> /home/myback.txt     (追加重定向) 把显示的结果追加到/home/myback.txt中去

7. 删除多行以及跳转到最后一行

删除多行步骤如下:

1. 首先要显示对应的行数这样方能知道从第几行到第几行删除

: set nu

2. 按Esc键退出,在命令行中输入: 190,6233d  (即[190 , 6233]都删除掉)

  如果想要情况整个文件内容,在直接运行以下命令:

  清空文件内容:>log.txt

8. 行位定位

 直接定位到最后一行: 

  按Esc键退出,在命令行中输入: G

 直接定位到第一行:

  按Esc键退出,在命令行中输入: 1 G

 直接定位到某一行:(第17行)

  按Esc键退出,在命令行中输入:17 G

9. 复制一行或多行

<1. 复制一行

yy   复制当前行

p   粘贴

<2. 复制多行

7yy  从当前行开始复制7行

p   粘贴

10. Linux中查看python的版本

  python -V

  或者

  python --version

11. grep 的用法

<1. 显示匹配的后n行    (after)

  grep -A n

<2. 显示匹配的前n行    (before)

  grep -B n

<3. 显示匹配的前后n行    (context)

  grep -C n

<4. 忽略大小写

  grep -i str

12. ll或ls显示说明

ll -ht     (h会按照标准格式自动转换大小即:456M,1.2G等,t 表示显示内容按照时间倒序排列)

应用案例:

清空8月份的日志文件:

rm -rf `ll -ht | awk ‘/8月/ {print $6,$NF}‘ | awk  ‘{print $NF}‘`

说明:awk ‘/pattern/action‘--> awk ‘/8月/{print $6,$NF}‘,只显示第六行与最后一行的内容且只保留8月的列表内容显示。

ls中文件颜色的显示代表的意义为:

  1. 蓝色-->目录

  2. 绿色-->可执行文件

  3. 红色-->压缩文件

  4. 浅蓝色-->链接文件

  5. 灰色-->其他文件

13. 查看某文件被哪个进程所占用

  lsof  文件名

  

14. 创建用户以及查看当前用户

  useradd redis

  passwd redis

  如果是Ubuntu系统则需要使用如下命令:

  useradd openstack -m -s /bin/bash

  userdel -r openstack

  查看当前系统存在的用户组和用户

  /etc/group文件包含所有组
  /etc/shadow和/etc/passwd系统存在的所有用户名

15. 常用查看命令

  查看内存使用情况: free -m  (m为MB,g为GB)

  

  查看对应磁盘使用情况: df -lh

  

查看对应CPU使用情况: cat /proc/cpuinfo

  会有32个大致相同的内容展示(下标是从0开始的),这就说明该服务器为8核操作系统

  

或者有更牛逼的命令:

cat  /proc/cpuinfo | grep "model name" | head -1        (只显示一行对应的CPU型号以及其他信息)

cat  /proc/cpuinfo | grep "model name"                        (系统有几个核就会显示几行)

cat  /proc/cpuinfo | grep "model name" | wc -l              (统计出一共有多少核)

 

  查看对应服务器版本具体情况: cat /etc/issue

  

  查看更为底层的版本信息: cat /proc/version (例如:CentOS实际最根源为RetHat,此命令将会显示所采用RetHat的版本)

  

如果想查看某个文件夹当前所占用的空间使用:

  du -h node            (cd /data/solr-4.8.0/)

  

如果想查看当前目录下的所有文件各个大小

  du -sh *        (cd /)

  

16. 查看内存情况

  <1.  jstat -gc pid         可以看到对应各个内存大小、使用状况以及GC处理情况

  <2.  jmap -heap [pid]       查看内存分布

  <3.  jstat -gcutil [pid] 1000     每隔1s输出java进程的gc情况

17. 修改文件夹及其里面的内容的权限

chown -R solr:solr /home/solr/lib

意思是将 /home/solr/lib 文件夹及其里面内容的用户所属权限修改为solr用户所属权限

18. 查看某个端口链接状态的连接数

  netstat -nlap | grep -i est | grep -i 6379 | awk ‘{print $4}‘

  netstat -nlap | grep -i est | grep -i 1121 | wc -l

  平时使用总结,使用此命令如果实在记不住后面参数有哪些,那么直接记住为:-nlap 即可,大部分情况都可以满足我们的需求

netstat常见参数如下:

  -a (all)显示所有选项,默认不显示LISTEN相关
  -t (tcp)仅显示tcp相关选项
  -u (udp)仅显示udp相关选项
  -n 拒绝显示别名,能显示数字的全部转化成数字。
  -l 仅列出有在 Listen (监听) 的服務状态

  -p 显示建立相关链接的程序名
  -r 显示路由信息,路由表
  -e 显示扩展信息,例如uid等
  -s 按各个协议进行统计
  -c 每隔一个固定时间,执行该netstat命令。

  提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

  

  grep -i                    (i表示忽略大小写)

  awk ‘{print $4}‘      (表示只打印第4列)

  grep -i est               (est表示:ESTABLISHED,即只显示ESTABLISHED即连接状态的端口)

  grep命令最后的那个显示出来的结果以它进行标红,即最后一个grep为:grep -i  6379, 那么打印出来的结果其中的6379标红,结果如下如所示:

  

19. 同步服务器的时间

  ntpdate pool.ntp.org

  将这个命令启用为定时脚本执行,具体如下所示:

  1 */2 * * * ntpdate pool.ntp.org

20. 不允许ssh登录如何配置

  修改vim /etc/sysconfig/sshd_config文件,增加一行:AllowUsers solr,具体如下所示:

  

  使其生效运行如下命令:

  service sshd reload

常用系统级配置总结:

  1. 限制登录:/etc/ssh/sshd_config    修改后需重启:   service sshd restart

  2. 用户配置:/etc/passwd

  3. sudo权限:/etc/sudoers

21. 常用JDK系统环境变量配置

 JAVA_HOME=/usr/java/jdk1.7.0_55
 CLASSPATH=.:$JAVA_HOME/lib.tools.jar
 PATH=$JAVA_HOME/bin:$PATH
 export JAVA_HOME CLASSPATH PATH

22. 查看Redis/Tomcat的版本

  redis-cli  info  |  grep  ‘redis_version‘

  tomcat版本需要进入到安装目录下的 bin/ 文件夹:

  ./version.sh  或者  sh version.sh

时间: 2024-10-26 15:50:51

Linux工作常用总结的相关文章

Linux 工作常用命令

1, 批量杀某个程序 比如某个程序叫  url_info.py, 起了若干个进程 . 快速查杀. 先查看 ps aux | grep url_info.py 确认没问题 ,可以杀,则批量kill ps aux | grep url_info.py  | cut -c 9-15 | xargs  kill 2,查看Linux 上 使用的 端口情况 grep后面跟 要 检查的端口,比如向看看 9999 端口有没有被占用 netstat  -apn | grep 9999 3,

linux工作常用命令

修改文件后缀 如 将文件application.properties.sample改为application.properties,格式 mv  文件名称.{改前后缀,修改后的目标后缀} 定位到修改文件的所在目录下#[[email protected] scripts]# cd /opt/simo-ng/scripts/[[email protected] scripts]# mv application.{properties.sample,properties} 修改文件内容 cd 到文件目

工作中用到的 Linux/Unix 常用命令

LINUX平时工作中用到的常用命令 :       scp是有Security的文件copy,基于ssh登录.操作起来比较方便,比如要把当前一个文件copy到远程另外一台主机上,可以如下命令. scp /home/1.gif [email protected]:/home/root 然后会提示你输入另外那台172.19.2.75主机的root用户的登录密码,接着就开始cp和ungzip了 如果想反过来操作,把文件从远程主机copy到当前系统,也很简单: scp [email protected]

linux 工作中常用的命令

vmware  --虚拟机 centos  ----linux系统 常用linux系统: centos .redhat . suse .euler linux 命令 对Linux而言 一切都是文件  目录 一.对文件 .目录的切换.查找这一类的命令 连接工具:xshell  putty 1.ifconfig 2.cd  切换目录 cd -  ---返回上一次命令的操作目录 3.pwd  当前路径 4.ls   ---只是显示当前目录下的文件名不会显示详细信息 5.ls -l  =  ll   -

linux下常用命令备忘

转自:Linux 命令集锦 linux下查看监听端口对应的进程 # lsof -i:9000 # lsof -Pnl +M -i4 如果退格键变成了:"^h". 终端连接unix删除退格键,按住CTL键同时按delete Linux搜索 # find / -name "xxx.conf" 查看linux是32位还是64位的命令 #file /sbin/init #getconf LONG_BIT #getconf -a 在Linux和Windows下都可以用nslo

王垠:完全用Linux工作 - imsoft.cnblogs

完全用Linux工作,抛弃windows 我已经半年没有使用 Windows 的方式工作了.Linux 高效的完成了我所有的工作. GNU/Linux 不是每个人都想用的.如果你只需要处理一般的事务,打游戏,那么你不需要了解下面这些了. 我不是一个狂热的自由软件份子,虽然我很喜欢自由软件.这篇文章也不是用来推行自由软件运动的,虽然我觉得自由软件运动是非常好的. 这篇文章也不是用来比较 Linux 和 Windows 内核效率,文件系统,网络服务的.我现在是作为一个用户而不是一个开发者来说话的,我

Linux系统管理常用命令

Linux系统管理常用命令 分类: Linux2011-01-10 18:26 1538人阅读 评论(0) 收藏 举报 linuxcommandservicenginxuserunix 目录(?)[+] 1. 时间date 1)显示当前时间: date .//Wed Jul 29 11:05:11 CST 2009  2)date修改时间:date -s  date 修改时间2007-08-29 14:41 date -s 14:36:30   //时间为14点36分30秒 date 08291

Linux下常用SVN命令

1.将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain  --username qinxiaohui 简写:svn co 2.往版本库中添加新的文件 svn add file 例如:svn add test.php(添加test.php) svn add *.php(添加当前目录下所有的php文件) 3.将改动的文件提交到版本库 svn commit -m "L

【2016-10-11】Linux系统常用的关机或重启命令shutdown、reboot、halt、poweroff、init 0及init 6的联系与区别

Linux下常用的关机/重启命令一般包括: shutdown.reboot.halt.poweroff等,当然了我们可以使用init 运行等级runlevel 0即halt来关机,或使用init 运行等级runlevel 6即reboot来执行重启. 当然了这些关机或重启的方式也有一些细微差别. 首先明确一下linux/redhat系的runlevel运行级别和debian系的runlevel是有所不同的. redhat系的runlevel定义如下: runlevel 0: halt 系统停机状