`

linux常用命令

 
阅读更多
 

命令编辑及光标移动

 

ctrl + u:删除从开头到光标处的命令文本

ctrl + k:删除从光标到结尾处的命令文本

ctrl + a:光标移动到命令开头

ctrl + e:光标移动到命令结尾

ctrl w:删除一个词(以空格隔开的字符串)

 

计算程序运行时间

$ time ./fibo 30
the 30 result is 832040

real    0m0.088s
user    0m0.084s
sys    0m0.004s

 

 

屏幕冻结

 

程序运行时,终端可能输出大量的日志,你想简单查看一下,又不想记录日志文件,此时可以使用ctrl+s键,冻结屏幕,使得日志不再继续输出,而如果想要恢复,可使用ctrl+q退出冻结。

 
windows上的dos格式转换为unix格式
dos2unix file

 

time

expr

rsync

 

清理文件 脚本示例

# ls -t(按修改时间顺序) tail -n +2(从第二行开始输出) 从标准输入构建并执行命令
ls -t data/xget.* | tail -n +2 | xargs rm -f

 

 

wc命令主要对文件中的行数、字符数、字节数进行计数

-c 统计字节数,除非指定 -k 标志。如果指定 -k 标志,wc 命令统计字符数。
-k 统计字符数。指定 -k 标志等同于指定 -klwc 标志。如果把 -k 标志同其它标志一起使用,那么必须包含 -c 标志。否则,将会忽略 -k 标志。
-l 统计行数。
-m 统计字符数。这个标志不能与 -c 标志一起使用。
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
1字节(Byte)= 8位(bit)
在ASCII码中,一个英文字母(不分大小写)占一个字节的空间,
中文字符占两个字节

示例:

ls -l / | grep "^-" | wc -l

 

ls -l  / | grep "^d" | wc -l

 

ls -lR / | grep "^-" | wc -l

 

 

查看文件夹属性

[razor@cobub01 ~]$ ll -ld .ssh
drwx------. 2 weifeng weifeng 4096 Dec 9 07:07 .ssh

 

非交互试修改密码

root@oite:~# echo "weifeng:1234" | chpasswd 

root@oite:~# echo "weifeng:1234" | chpasswd 
[root@cobub-master ~]#echo "1234" | passwd --stdin username
或者
[root@cobub-master ~]# echo "weifeng:1234" | chpasswd 

  

 

-e     enable interpretation of backslash escapes
-E     disable interpretation of backslash escapes (default)

  例如

root@oite:~# echo -e "SPARK_JAVA_OPTS+=' -Dspark.serializer=org.apache.spark.serializer.KryoSerializer -Dspark.kryo.registrator=org.apache.spark.graphx.GraphKryoRegistrator ' \nexport SPARK_JAVA_OPTS" >> spark-env.sh

root@oite:~# cat spark-env.sh
SPARK_JAVA_OPTS+=' -Dspark.serializer=org.apache.spark.serializer.KryoSerializer -Dspark.kryo.registrator=org.apache.spark.graphx.GraphKryoRegistrator '
export SPARK_JAVA_OPTS


root@oite:~# echo "SPARK_JAVA_OPTS+=' -Dspark.serializer=org.apache.spark.serializer.KryoSerializer -Dspark.kryo.registrator=org.apache.spark.graphx.GraphKryoRegistrator ' \nexport SPARK_JAVA_OPTS" >> spark-env2.sh

root@oite:~# cat spark-env2.sh
SPARK_JAVA_OPTS+=' -Dspark.serializer=org.apache.spark.serializer.KryoSerializer -Dspark.kryo.registrator=org.apache.spark.graphx.GraphKryoRegistrator ' \nexport SPARK_JAVA_OPTS

 

 

ntp时间同步

 

linux文件描述符

 

切换用户 

普通用户切换到root用户

su - root / su -

root用户密码...

如果不知道root用户的密码,可以通过sudo切换(前提是root给sudo开启了这个权限)

sudo  su - root

普通用户密码...

 

1) linux的7种运行模式总结;

2) linux系统的启动流程

/etc/inittab

runlevel  查看当前系统运行级别

init  切换运行级别 

 

grep 过滤

grep  -E  "a|b"  file

greo  -Ei  "a|b"  file  // 不区分大小写

egrep 相当于 grep  -E

示例:grep -vE 排除*.log和*.cfg为后缀的文件

[root@cobub04 ~]# ll
-rw-------. 1 root root 3333 Aug 26 13:06 anaconda-ks.cfg
-rw-r--r--. 1 root root 41364 Aug 26 13:06 install.log
-rw-r--r--. 1 root root 9154 Aug 26 13:04 install.log.syslog
-rw-r--r-- 1 root root 223784960 Sep 21 01:03 MySQL-5.6.26-1.el6.x86_64.rpm-bundle.tar
[root@cobub04 ~]# ll | grep -vE "*.log|*.cfg" | awk '{print $9}'
MySQL-5.6.26-1.el6.x86_64.rpm-bundle.tar
过滤掉sshd_config中的注释行和空行
egrep -v "^#|^$" /etc/ssh/sshd_config
排除自己
ps -ef|grep -v "grep"

 

替换文件中的内容

sed -i s#xxx#xxx#g file
例如 
sed -i   s#SELINUX=enforcing#SELINUX=disabled#g /etc/selinux/config
grep "disabled" /etc/selinux/config

 

~]# diff file1 file2
~]# vimdiff file1 file2

 

[root@cobub04 ~]# cat /etc/redhat-release 
CentOS release 6.7 (Final)
[root@cobub04 ~]# uname -r
2.6.32-573.8.1.el6.x86_64
[root@cobub04 ~]# uname -m
x86_64

 

查找大于100M的文件:find  filepath  -type  f  -size  +100(K/M/G)

[root@master01 ~]# find ./ -type f -size +100M

 

 

查看文件夹下文件的个数:ls  -l  dirname | grep  "^-"|wc -l 或者 find  dirname  -type  f|wc  -l

[razor@master01 ~]$ ls -l .|grep "^-"|wc -l

查看某文件夹下文件的个数,包括子文件夹里的。
说明:
ls -lR|grep "^-"|wc -l
查看某文件夹下文件夹的个数,包括子文件夹里的。
ls -lR|grep "^d"|wc -l
grep "^-"
这里将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d

 

[razor@master01 ~]$ find . -type f|wc -l

统计所有文件及子文件的个数

 

解压xz文件:

$xz -d ***.tar.xz
$tar -xvf ***.tar

解压bz2文件: 

$bzip2 -d  *.tar.bz2
$tar -xvf  *.tar

 

查看系统内存状况 

[root@web monitor]# free -m
                              total   used  free  shared  buffers  cached
Mem:                     7991  7730  261  0           171      1604
-/+ buffers/cache:            5953  2037
Swap: 2047 595 1452

 注:buffers/cache显示的是被系统缓存了的内存数据

 

端口类:

[root@cobub01 ~]# netstat -antp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:8081 0.0.0.0:* LISTEN 31503/java
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1814/sshd

 

 

查看某端口被哪个进程占用:lsof -i:端口号

 

[root@cobub01 ~]# lsof -i:8081
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 31503 weifeng 469u IPv4 129933 0t0 TCP *:tproxy (LISTEN)

 

根据进程号pid查看具体是哪个应用:ps -ef|grep pid

 

[root@cobub01 ~]# ps -ef|grep 31503
weifeng 31503 31501 3 Sep07 ? 00:15:43 java -XX:MaxPermSize=192m -Djava.io.tmpdir=./tmp -Djava.net.preferIPv4Stack=true -Dcom.sun.jndi.ldap.connect.pool.protocol=plain ssl -Xms256m -Xmx768m -Djava.library.path=bin/jsw/lib
pidof   programName 
pgrep   programName
strace  -p  pid

  

 

kill命令

kill pid 相当于 kill -TERM pid ;用于结束不能捕捉到的进程

kill  -USR2  pid  // 平滑杀掉进程

kill -9 用法详解:kill -9 pid ;强制杀掉进程
kill -9, 这个强大和危险的命令迫使进程在运行时突然终止,进程在结束后不能自我清理。危害是导致系统资源无法正常释放,一般不推荐使用,除非其他办法都无效。
当使用此命令时,一定要通过ps -ef确认没有剩下任何僵尸进程。只能通过终止父进程来消除僵尸进程。如果僵尸进程被init收养,问题就比较严重了。杀死init进程意味着关闭系统。
如果系统中有僵尸进程,并且其父进程是init,而且僵尸进程占用了大量的系统资源,那么就需要在某个时候重启机器以清除进程表了。

改进( kill + xargs )
杀死进程的方式有以下几种:
a) ps -ef | grep firefox | grep -v grep | awk '{print $2}' | xargs kill -s 9
b) pgrep firefox | xargs kill -s 9
c) pidof firefox | xargs kill -s 9

d) kill -s 9 `ps -ef | grep firefox | grep -v grep | awk '{print $2}'`
e) kill -s 9 `pgrep firefox`
f) kill -s 9 `pidof firefox`

pkill 类似于 pgrep, pkill 表示 pgrep+kill
例如: pkill firefox
 参考推荐:Linux  kill,  killall,  kill  -9;

 

进程前台运行和后台运行的转换

查看在后台运行的命令:jobs

将后台的命令调至前台继续执行:fg

(如果后台中有多个命令,可以用 fg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid))

将一个正在前台执行的命令暂停,并且放到后台:ctrl + z

将一个在后台暂停的命令继续执行:bg

 

修改文件所属用户和属组:chown  -R  用户:用户组  file 

 

CentOS桌面卸载:

yum groupremove "KDE (K Desktop Environment)"
yum groupremove "GNOME Desktop Environment"
yum groupremove "X Window System"

 

 

修改启动项,改为从文本启动:vi /etc/inittab

修改id后数字为3 --   id:3:initdefault:

 

分享到:
评论

相关推荐

    linux常用命令大全.md

    linux常用命令大全 1. **ls**:列出目录内容 2. **cd**:改变当前目录 3. **pwd**:显示当前工作目录 4. **mkdir**:创建目录 5. **rmdir**:删除空目录 6. **cp**:复制文件或目录 7. **mv**:移动或重命名文件或...

    linux常用命令大全.pdf

    ### Linux常用命令详解 #### 一、文件管理 1. **ls**:此命令用于列出当前目录中的文件和子目录。通过使用不同的选项,可以改变其输出格式。 - `-l`:使用长格式列表输出,包括文件权限、拥有者、组、大小等详细...

    最全Linux常用命令大全.pdf

    以下是一些关于Linux常用命令的详细说明: 1. **pwd**:`pwd`(Print Working Directory)命令用于显示当前工作目录,即用户当前所在的目录路径。 2. **cd**:`cd`命令用于切换目录。例如,`cd /`进入根目录,`cd ...

    LINUX常用命令全集

    LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 ...

    最全Linux常用命令大全-linux常用命令全集

    "最全Linux常用命令大全-linux常用命令全集" 本文档对 Linux 中最常用的命令进行了详细的总结和说明,涵盖了文件和目录管理、磁盘空间管理等方面的命令。 文件和目录管理命令 1. `pwd` 命令:显示当前目录 `pwd`...

    Linux常用命令手册大全.zip

    Linux常用命令手册大全.zip 部分内容: Linux常用命令手册 NO 分类 PS1 命令名 用法及参数 功能注解 对应章节 1 文件管理 # ls ls -a 列出当前目录下的所有文件,包括以.头的隐含文件 文件管理 # ls ls -l或ll 列...

    Linux常用命令详解.pdf

    ### Linux常用命令详解知识点 #### 一、命令格式与通配符 - **命令格式**: - **命令**:指定要执行的操作。 - **选项**:改变命令的行为方式,通常以`-`开头,多个选项可以用空格或直接连接的方式给出。 - **...

    Linux常用命令教学视频

    04.1.1 Linux常用命令-文件处理命令-命令格式与目录处理命令ls.mp4 04.1.2 Linux常用命令-文件处理命令-目录处理命令.mp4 04.1.3 Linux常用命令-文件处理命令-文件处理命令.mp4 04.1.4 Linux常用命令-文件处理...

    最新-Linux常用命令大全-非常实用

    Linux 常用命令大全 Linux 操作系统是一个功能强大且灵活的操作系统,拥有众多实用的命令来帮助用户管理和维护系统。下面是 Linux 中一些常用的命令,旨在帮助用户快速掌握 Linux 操作系统。 TTY 控制台终端 在 ...

    Linux常用命令汇总

    Linux常用命令汇总中,首先涉及到的是检查Java开发工具包(JDK)是否已安装以及版本信息。使用命令`java –version`和`javac –version`可以实现该功能。`java –version`用于查看Java运行环境的版本,而`javac –...

    LINUX常用命令语言

    LINUX 常用命令语言总结 LINUX 操作系统提供了大量的命令语言,以下是常用的命令语言概述: 1. 远程桌面连接命令:mstsc mstsc 是一种远程桌面连接命令,可以连接到另一台计算机,并在远程桌面上进行操作。 2. ...

    Linux常用命令.xls

    Linux常用命令.xls Linux常用命令.xls Linux常用命令.xls Linux常用命令.xls Linux常用命令.xls Linux常用命令.xls Linux常用命令.xls Linux常用命令.xls Linux常用命令.xls Linux常用命令.xls Linux常用命令.xls ...

    Linux常用命令.md

    linux常用命令md文件

    Linux常用命令大全

    Linux常用命令全集.CHM Linux vi命令大全.txt liunx命令大全.txt liunx 下如何用命令行设置网络?.txt 请问怎么设置DNS的命令?.txt Red Hat Linux下配置Tomcat+JSP+Apache服务器的步骤.txt Linux 下 Apache 与 ...

    Linux 常用命令大全

    linux常用命令大全; linux常用命令大全; linux常用命令大全; linux常用命令大全; linux常用命令大全; linux常用命令大全; linux常用命令大全; linux常用命令大全; linux常用命令大全; linux常用命令大全; ...

    Linux常用命令及实用命令万字总结.doc

    "Linux常用命令及实用命令万字总结" 本文档旨在总结Linux系统中常用的命令和实用命令,涵盖了基本的文件管理、目录操作、文件查询、系统管理等方面的命令。 1. ls命令 ls命令是Linux系统中最常用的命令之一,用于...

    常用linux常用命令大全.zip

    linux常用命令大全常用linux常用命令大全.常用linux常用命令大全.常用linux常用命令大全.常用linux常用命令大全.常用linux常用命令大全.常用linux常用命令大全.常用linux常用命令大全.常用linux常用命令大全.常用...

Global site tag (gtag.js) - Google Analytics