常用linux基本命令笔记
选择字号: 超大 标准 发布时间:2017年08月11日 | 作者:yang | 0个评论 | 2111人浏览
阿里云安装包下载 http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/
centos7 163yum源地址 wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
强制退出其他连接
pkill -9 -t pts/1
输入w可以看到用户列表和tty编号
输入
write user1 pts/1 回车
你好!
就可以输入消息,并向user1发送该消息
pidof命令用于查找指定名称的进程的进程号id号。
语法
pidof(选项)(参数)
选项
-s:仅返回一个进程号;
-c:仅显示具有相同“root”目录的进程;
-x:显示由脚本开启的进程;
-o:指定不显示的进程ID。
脚本加密
shc -r -T -f script-name
echo -e 处理特殊字符
echo -e "\e[1;32m 哈哈哈\e[0m" 绿色
echo -e "\e[1;31m 哈哈哈\e[0m" 红色
若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:
\a 发出警告声;
\b 删除前一个字符;
\c 最后不加上换行符号;
\f 换行但光标仍旧停留在原来的位置;
\n 换行且光标移至行首;
\r 光标移至行首,但不换行;
\t 插入tab;
\v 与\f相同;
\\ 插入\字符;
设置密码两种方法
echo "12345678" |passwd --stdin yang
echo -e "1234567\n1234567"|passwd yang
1、使用chown命令可以修改文件或目录所属的用户:
命令:chown 用户 目录或文件名
例如:chown qq /home (把home目录下的qq目录的拥有者改为qq用户)
使用chgrp命令可以修改文件或目录所属的组:
命令:chgrp 组 目录或文件名
例如:chgrp qq /home (把home目录下的qq目录的所属组改为qq组)
gpasswd -d username GROUP 把用户从组里去除
usermod -G groupname username 添加用户到组
usermod -g groupname username 跟组一样
2、cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。
cut -d: -f1 /etc/passwd
cat /etc/passwd|head -n 5|cut -d : -f 1,2
如果不指定 File 参数,cut 命令将读取标准输入。必须指定 -b、-c 或 -f 标志之一。
主要参数
-b :以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。
-c :以字符为单位进行分割。
-d :自定义分隔符,默认为制表符。
-f :与-d一起使用,指定显示哪个区域。
-n :取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的<br />范围之内,该字符将被写出;否则,该字符将被排除。
3、sort 排列
ps aux|sort -nrk 4
-b 忽略每行前面开始出的空格字符。
-c 检查文件是否已经按照顺序排序。
-f 排序时,忽略大小写字母。
-M 将前面3个字母依照月份的缩写进行排序。
-n 依照数值的大小排序。
-o<输出文件> 将排序后的结果存入指定的文件。
-r 以相反的顺序来排序。
-t<分隔字符> 指定排序时所用的栏位分隔字符。
-k 选择以哪个区间进行排序。
ps -eo pid,lstart,etime,cmd
4、
find / -nouser 寻找不属于任何人的文件
find / -mtime -n 寻找几天内修改过的文件
find / -mtime 0 0表示当前时间,就是表示从现在24小时
find / -type f f表示文件,d表示目录
find / -size +200k 大于200k的
find /www/ -type f -name *.log -size +1M
mv `find /www/ -type f -name *.log -size +1M -mtime +7` /tmp/
whereis 查找命令路径
logout 退出用户
who 现在正在登录的用户
paste该命令主要用来将多个文件的内容合并,与cut命令完成的功能刚好相反。 paste 123.txt 123.sh
uniq -c 统计相同的
cat /etc/passwd |awk -F ':' '{ print $1 }'
lsof -i:(端口) 查看这个端口有那些进程在访问,比如22端口
grep 更适合单纯的查找或匹配文本
sed 更适合编辑匹配到的文本
awk 更适合格式化文本,对文本进行较复杂格式处理
awk 2<NR && NR<5’ a.txt
awk 'NR==2' a.txt 显示第2行
awk -F'[ :]+' 括号代表或者,+多个也算一个读取
print $0代表整行
NF代表最后一个字段数
sed
a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!
sed -n '/usr/p' man.config 显示带usr的行
sed -i '1,3s/222/128/g' 123.txt 替换1-3
sed -i '2,3d' 123.txt 删除 2. 3行
sed -i 's/111/222/g' 123.txt 全局替换
touch -d "2 days ago" 333 修改文件时间
scp 文件名 远程计算机用户名@远程计算机的ip:远程计算机存放该文件的路径
使用umount -l。
即 umount -l /mnt
选 项 –l 并不是马上umount,而是在该目录空闲后再umount。还可以先用命令 ps aux 来查看占用设备的程序PID,然后用命令kill来杀死占用设备的进程,这样就umount的非常放心了
新建一个test.sh脚本,内容为:A=1;
修改其可执行权限:chmod +x test.sh;
运行sh test.sh后,echo $A,显示为空,因为A=1并未传回给当前shell;
运行./test.sh后,也是一样的效果;
运行source test.sh 或者 . test.sh,然后echo $A,则会显示1,说明A=1的变量在当前shell中
标签:
欢迎加QQ:2908190019
额 本文暂时没人评论 来添加一个吧
发表评论