Liunx编程-命令
pwd
显示当前目录 全称Print Working Directoryctrl+l
清屏假的清屏- ``
ctrl+q
退出CTRL+-
调节字体大小ctrl+art+T
打开终端ctrl+shitf+T
多终端alt+1,23,4
切换窗口CTRL+D
关闭终端上下键
查看之前命令which
查看命令在那个目录ls -lh
查看当前访问权限ls -a
查看隐藏文件ls -l
以列表的方式列出ls -l -h
列表方式和大小也显示ls -a -h -l
列表方式文件大小所有的文件和目录都列出来ls -alh
简写r
读对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。w
读写对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。x
可执行 对文件而言,具有执行文件的权限;对目录来说该用户具有进入目录的权限。sudo -s
切换root账户mkdir
创建文件目录mkdir a/c/d -p
创建递归目录redir a/b/c -p
删除递归空目录rm 文件或者目录 -r
==通杀!!!!!!!!!!!!==touch
创建文件gedit
打开ubuntu的记事本rm
删除.文件名.\
当前目录.文件名
隐藏文件.目录名
隐藏目录tree
显示文件夹的树状结构图cd -
回调上次所在的目录-r
删除不了的后面加-r--help
获取内部shell帮助
man
手册获得帮助信息b
回滚一瓶f
前滚一瓶q
推出h
列出所有功能键/word
搜索woed字符串
通配符
*
文件代表文件名中所有字符ls te*
查找以te开头的文件ls *html
查找结尾为html的文件?
代表文件名中任意的一个字符ls ?.c
只找第一个字符任意,后缀为.c的文件ls a.?
只找中有3个字符,前2字符为a.最后一个字符任意的文件[]
【“和”】将字符组括起来,表示可以匹配字符组中的任意一个,‘-’用于表示字符范围[abc]
匹配a,b,c中的任意一个[a-f]
匹配从a到f范围内的任意一个字符ls[a-f]
找到a-f内的任意一个字符开头的文件ls [a-f]*
找到从a-f内的任意一个字符开头的文件ls a-f
吵着文件名为a-f的文件当’-‘‘处于括号之外失去通配符的作用\
如果要使通配符作为普通字符使用,可以在其前面加上转义字符。“?”和“*”处于方括号内时不用使用转义字符就失去通配符的作用ls \a*
查找文件名为*a的文件
>输出重定向命令
ls >test.txt
test.txt如果不存在就创建存在则覆盖里面的内容ls /bin >test.txt
将bin目录下的所有内容写入到test.txttest.txt如果不存在就创建存在则覆盖里面的内容ls /bin >>test.txt
将bin目录下的所有内容追加写入到test.txtcat feiji.py
显示feiji.py的所有内容cat test1.txt test2.txt > test3.txt
将前两个重定向到test3然后cat test3显示tac
倒着显示内容与cat 相对head -2 文件名
打印文件前两行内容f
下屏b
上屏gedit feiji.py
使用gedit编辑工具显示:-
管道
ls -lah | more/cat
将lah显示的内容交给more或者cat显示;
多个命令用;隔开ls;ls -lah-
相对路径和相对路径
- 绝对路径以/根目录开始
- 相对路径就是..
which
查看命令的目录
grep文本中搜索
- 搜索内容以正则表达式表示
grep "^ntfs" haha.txt
查找ntfs开头的内容grep -n "^ntfs haha.txt"
查找内容显示行grep -vni "^ntfs" haha.txt
显示内容不是以ntfs并且显示行和忽略大小写grep "s$" haha.txt
以s结尾的内容grep -n "s$" haha.txt
显示行grep -n "s" haha.txt
查找haha里面包含s内容的行-
拷贝
cp /home/zhang/python.txt /home/zhang/test -r
将python.txt 拷到test目录下cp /home/zhang/python.txt ./r
将python.txt 拷到当前目录下-
mv移动文件和目录
mv 文件名 移动的地方
移动文件mv test test1
如果当前目录只有test文件test1目录不存在会把test目录名字修改程test1如果test1是文件就会报错如果test1是目录就会移动- 如果test1是文件test也是文件
- mv test test1 会改变名字并且会覆盖test1 的内容
- test1文件不存在就更改名字
-
find
find / -size +2M
查找根目录下大于2M的文件find / -name *.py
查找根目录下以.py文件结尾的文件find / -perm 0777
查看根目录下所有可读可写可执行的文件
-
创建链接
- 创建软连接:
ln -s 1.txt 任意名字
ln 1.txt + 任意名
字硬链接-
解压打包tar 归档管理
-C
指定目录-
.tar 打包解压
- 打包命令
tar -cvf test.tar *.txt
- 解压
tar -xv test.tar -C ./test2
-
.tar.gz 打包解压
- 打包命令:
tar -zcvf test.tar.gz *.txt
- 解包文件:
tar -zxvf test.tar.gz -C ./test
-
.tar.gz2打包解压
- 打包命令:
tar -jcvf test.tar.bz2 *.txt
- 解包文件:
tar -jxvf test.tar.bz2 -C ./test
-
gzip文件压缩解压
gzip -r 压缩所有子目录只能压缩tar
的文件gzip -d 解压
-
zip、unzip文件压缩解压
- 压缩文件:
zip [-r] 目标文件(没有扩展名) 源文
件 - -d 指定目录
- 解压文件:
unzip -d 解压后目录文件 压缩文件
-
进程管理
-
ps
查看进程 -a
显示终端上的所有进程,包括其他用户的进程-u
显示进程的详细状态-x
显示没有控制终端的进程-w
显示加宽,以便显示更多的信息-r
只前世正在运行的进程- ps -au
查看进程ps -aux
查看进程详细信息-
top 按照一定的顺序排序显示所有进程
shift + p
按照cpu占有率排序shift +m
按照内存占有率排序q
退出-
htop
kill pid
杀死进程kill -9 pid
强制杀-
reboot、shutdown、init
关机重启
-
磁盘查看
-
df
检测磁盘空间默认字节 -a
显示所有文件系统的磁盘使用情况-m
以1024字节为单位显示-t
显示各指定文件系统的磁盘空间使用情况-T
显示文件系统-
du检测目录所占磁盘空间
-a
递归显示指定目录中各文件和子目录中文件占用的数据块-s
显示指定文件或目录占用的数据块-b
以字节为单位显示磁盘占用情况-l
计算所有文件大小,对硬链接文件计算多次-
ifconfig查看或配置网卡信息
- 修改ip地址命令 :
sudo ifconfig ens33 192.168.1.108
-
查看系统日期和时间
date
显示或设置时间cal
命令用于查看当前日历,-y显示整年日历:查看2018年的日历cal -y 2018
date
“+%y年%m月%d日” 18年04月13日date
“+%y年%m月%d日"18年 4月_13日
-
用户管理
id 用户名
判断用户是否存在whoami
查看当前用户who
cat /etc/passwd
查看系统用户信息cat /etc/group
groups+ab
查看系统用户组信息useradd
添加用户账号useradd test -m
创建test用户,如果/home/test不存在,就自动创建,不指定默认也是属于test用户组useradd -d /home/abc abc-m
创建abc用户,如果/home/abc目录不存在,就自动创建这个目录,同时用户属于abc组useradd -d /home/a a -g test-m
创建一个用户名字叫a,主目录在/home/a,如果主目录不存在,就自动创建主目录,同时用户属于test组cat /etc/passwd
查看系统当前用户名- 切换用户 su+名字
- sudo passwd +用户名 设置密码
- userdel删除用户
- userdel -r abc(用户名) 删除用户,同时删除用户的家目录
- 删除一个已经登陆过的test用户
- sudo vim /etc/passwd —>找到test这个账号–>删除这行配置Esc—?:保存推出–》删除家目录sudo rm test -r
- su 切换用户
- su 用户—》提示输入密码
- 切换到test用户 su test —>设置密码sudo passwd test—->exit
- 查看用户组 cat /etc/group groupmod groups
- 添加一个组 sudo groupadd haha
- 删除haha组 sudo groupdel haha
- 查haha再哪个组groups haha
- 修改用户所在组 usermod
- 吧账号test从test组修改成abc sudo usermod -g abc test
- 把账号teest从abc 到test sudo usermod -g test test
- 普通用户添加sudo组 sudo usermod -a -G sudo 用户名
- usermod -g 与 -G的区别 -g用来制定这个用户默认的用户组 -G一般配合’-a’来完成向其它组添加
- gpasswd把账号从某组移除
- sudo gpasswd 组 -d 账号
-
文件管理
- 把1.txt文件所属组(atguigu)修改成laowang这个组:
- sudo chgrp laowang 1.txt
- 把1.txt所有者(atguigu)改成laowang所有
- sudo chown laowang 1.txt
- chmod修改文件权限(重点)
- 字母法
- chmod u/g/o/a + /-/+ = rwx 文件
- 数字法
- r:4 读
- w:2 写
- x:1 执行
-
- : 0 没有任何权限
- 3:可写可执行
- 5:可读可执行
- 6: 可读可写
- 7:可读可写可执行