Linux指令
终端窗口快捷键
复制:Ctrl + Shift + c
粘贴:Ctrl + Shift + v
如果在终端外层窗口复制内容,粘贴在终端:Shift + insert
查看U盘信息: sudo fdisk -l
文件指令
ls:
ls -a :把隐藏的文件显示
ls -l 显示文件的详细信息 -lh 也是显示文件的详细信息,只是文件的大小是以k单位
ls -ld 显示指定目录下的信息
ls -al --full-time 显示完整时间
mkdir:
mkdir -p temp/a/b 创建第二个文件不存在的目录(a不存在)
cp -r 一个或者多个目录 目标文件 :复制完之后文件的时间改成当前时间,如果保持属性不变 用 -p
cp -r 源文件 新名字 : 更改文件名字
mv 源文件 (目标路径+新名字) :剪切
关于执行文件路径的变量:$PATH
echo $PATH 打印出系统变量
PATH="$PATH":/root 将/root加入到执行文件查询路径PATH中
复制、删除与移动: cp, rm, mv
cp -i 源文件 目标文件 覆盖时会有查询
link
软链接 ln -s (源) (被链接).soft
硬链接 :不能跨分区;不能针对目录使用
硬链接同文件名一样,指向文件的内容,删除文件名的时候,软连接找不到,但是硬链接仍然有效
权限管理
r w x 分别是 4 2 1
修改权限
(1)chmod +(u + 权限) + 文件
(2)chmod +(rwx值) + 文件
文件查找
1.find
2.locate -i(不区分大小写) 快 需要更新系统文件库(updatedb)
3.grep 在文件中查找某一行
-i (不用区分查找的大小写)
grep -v ^# hello.c 表示把hello.c文件中所有以#开头的行除去显示
4.搜索一个命令 which 或 whereis
sed命令
sed -n 1,2p file 打印文件file第1,2行
sed -i 's/源/目标/g' 文件, 直接操作文件执行替换命令
grep命令
grep -v 是反向查找的意思,比如 grep -v grep 就是查找不含有 grep 字段的行
以kill某一个pid为例,可以通过grep找到pid,然后传给xargs,然后xargs接受到的每个参数进行执行kill操作
ps -ef | grep 'a' | xargs kill
awk -F# '{print NR, NF,$1}' test -F#表示用#作为分隔符,这是awk的内置命令,也可以使用 -FS=’#‘, NR表示行, NF表示列,field
awk '{print FNR, $0}' test testfile 多个文件分别计数的行号
-v RS/ ORS 输入输出符
awk 'BEGIN{print "aaa", ARGV[0], ARGV[1], ARGV[2], ARGC}' test testfile
模式:
awk 'NF>2 {print $0}' testfile 可以用逻辑运算符来过滤
正则匹配
awk '/LINUX/,/test/{print $0}' testfile 输出从开始匹配到LINUX行到匹配到test行
awk 'NR>=2 && NR<=4 {print $0}' testfile 输出第2-4行
逻辑判断
循环操作
统计次数
awk 'BEGIN{srand(); print int(rand() * 100)} 取0-100中的随机数
awk 'BEGIN{srand()} {print rand() "\t" $0}' filename | sort -nk 1 | head -n line_number | awk -F "\t" '{print $2}' > file 随机采样
去重操作:
sort test.txt | uniq -c | sort -rn 先排序,然后去重,再根据重复次数排序
awk '!a[$0]++' file
命令查看
man + 命令| 配置文件帮助信息
/选项 查看选项的内容
whatis +命令 简单查看命令信息
apropos + 配置文件 简单查看配置文件帮助信息
help +shell内置命令
help -s kill 该参数只显示被查询命令的简短语法描述
在显示的帮助信息中,有一些代号
1:用户在shell环境中可以操作的命令和可执行文件
5:配置文件或者是某些文件的格式
8:系统管理员可用的管理命令
用户管理命令
useradd + 用户名 添加新用户
passwd + 用户名 为用户名设置一个密码 (root可改)
who :显示登录的用户名、登录时间....
w : 比who详细
压缩文件命令
gzip:
gzip + 文件名 :压缩 只能压缩文件不能压缩目录,并且不保存源文件
gunzio +压缩文件名 :解压
tar:可以解压tar.gz文件
-x 解包 -v 显示详细信息 -f 指定解压文件 -z解压缩
tar -cvf 压缩文件.tar 源文件
tar -xvf 压缩文件 : 解压
tar -zcvf 压缩文件.tar.gz 源文件
tar -zxvf 压缩文件.tar.gz :解压压缩文件
tar -zxvf 软件包名.tar.gz -C /home/hao 将软件包名.tar.gz解压到指定的目录下 (注意:-C为大写)
tar -jcvf 压缩文件.tar.gz.bz2 压缩
tar -jxvf 压缩文件.tar.gz.bz2
zip 保留源文件 -r压缩目录
zip 压缩后的.zip 要压缩的文件
unzip 解压文件
bzip2 -k 保留源文件
bunzip 解压
软件的安装
dpkg = debian package
dpkg -i package.deb 安装包
网络命令
write: 给在线用户发信息 ,ctrl + D结束输入
wall: writeall 扩大write范围
mail 用户名 :
last 查看用户登录情况
基本操作
关机命令:
sudo shutdown -r 【时间】 重启
sudo shutdown -h [时间] 关机
对于时间参数:now表示立即执行,hh:mm表示将在某一时刻执行
Vim命令
set nu :显示行号
set nonu :隐藏
gg: 到第一行 G:到最后一样
到某一指定行直接输入行数
在一行中输入$到行尾,输入0到行首
插入命令:a,i,o
a:在光标所在后插入 A:在光标所在的行尾插入
i:在光标所在前插入 I:在光标所在的行首插入
o:在光标所在下插入新行 O:在光标上插入新行
w 向后跳过一个单词
b 向前跳过一个单词
ctrl + r 反撤销
删除命令
x:删除光标所在处字符
nx:删除光标所在往后n个字符
dd:删除光标所在行; ndd :删除n行
dG:输出光标往下的所有到文件末尾
D:删除光标所在处到行末尾
x,yd:删除从x行到y行
d0 删除到行首
dw 删除一个单词
复制
yy:复制某一行 nyy:复制当前行以下n行,yNk:复制当前行以上N行
dd:剪切当前行 ndd:剪切当前行以下n行
p:粘贴光标所在行下 P:粘贴光标所在行上
6,9 co 12
复制第6行到第9行之间的内容到第12行后面。
块选择:
v 从当前行到光标所在的位置
V 从当前行到光标所在的行
. 是重复执行之前的命令
>> 向右移动代码
ctrl + V :表示块选择
1、输入 “I” 表示插入,在输入插入的内容,按‘ESC’,就会插入到一列
多文件编辑:
1.通过 ‘vim file1 file2 ’ 命令来使用一个vim打开两个文件
2、在vim中使用 “:files” 查看编辑的文件的数据有什么,
3、在vim的环境下输入‘n’会来到第二个编辑的文件
多窗口功能:
1、:sp{文件名} 将在新窗口启动另一个文件
2、ctrl + w 用来切换窗口
替换和取消
r:替换当前字符
R:替换光标之后的字符,直到按esc结束
u:取消,相当于word上面的undo
搜索
/string :搜索字符串,按n是寻找下一个,搜索是忽略大小写 加个set ic, 取消 set noic,n可下一个
替换:
%s / old / new / g :全文替换
x , ys/ old / new / g 在x-y行替换
保存退出
w +其他位置 :另存为
shift + zz ,保存退出的快捷键
导入命令执行结果
r 文件名 :将文件的内容导入到当前光标的位置
!which 系统命令 查看命令的路径
r !date :导入时间
自己设置快捷键 map ctr+v+p 功能(I#<esc>) :把ctrl p 生成了在行首插入#并推到命令界面
删除行首的快捷键 map ctrl + v+B 0x(0是光标移到行首,x是删除) :所以ctrl + B就是删除行首的快捷键
插入一个指定字符串 map ctrl + v + H iabcde<esc>(i是插入命令,abcde是插入的内容) :所以ctrl + H 就是插入abcde的快捷键
ab mymail zhaopei.mail :mymail的时候会替换zhaopei.mail
--------------------------------------------------------------------------------------------------------------------------------------
2017-7-20 更新...
sudo apt-get install mysql : 下载并安装mysql,(从哪下载)
wget + url 下载
ssh登陆
ssh 用户名@主机ip
kill -9 强制关掉
删除某目录以及指定目录下的文件
find . -name "*f" -print -exec rm -rf {} \;
查找进程
ps -ef | grep 名字