常用Linux操作指令

-------------------------------Linux目录-------------------------------

/:根目录,一般根目录下只存放目录,在Linux下有且只有一个根目录。所有的东西都是从这里开始。当你在终端里输入“/home”,你其实是在告诉电脑,先从/(根目录)开始,再进入到home目录。
/bin: /usr/bin: 可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。
/boot:放置linux系统启动时用到的一些文件,如Linux的内核文件:/boot/vmlinuz,系统引导管理器:/boot/grub。
/dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱 mount /dev/cdrom /mnt。
/etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有 /etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d。
/home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~edu 表示用户 edu 的家目录。
/lib: /usr/lib: /usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助。
/lost+fount:系统异常产生错误时,会将一些遗失的片段放置于此目录下。
/mnt: /media:光盘默认挂载点,通常光盘挂载于 /mnt/cdrom 下,也不一定,可以选择任意位置进行挂载。
/opt:给主机额外安装软件所摆放的目录。
/proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有 /proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/* 等。
/root:系统管理员root的家目录。
/sbin: /usr/sbin: /usr/local/sbin:放置系统管理员使用的可执行命令,如fdisk、shutdown、mount 等。与 /bin 不同的是,这几个目录是给系统管理员 root使用的命令,一般用户只能"查看"而不能设置和使用。
/tmp:一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下。
/srv:服务启动之后需要访问的数据目录,如 www 服务需要访问的网页数据存放在 /srv/www 内。
/usr:应用程序存放目录,/usr/bin 存放应用程序,/usr/share 存放共享数据,/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。/usr/local: 存放软件升级包。/usr/share/doc: 系统说明文件存放目录。/usr/share/man: 程序说明文件存放目录。
/var:放置系统执行过程中经常变化的文件,如随时更改的日志文件 /var/log,/var/log/message:所有的登录文件存放目录,/var/spool/mail:邮件存放的目录,/var/run:程序或服务启动后,其PID存放在该目录下。

------------------------------linux常用命令------------------------------
#ctrl+alt+F4:进入可视化界面
#ctrl+alt+F7:退出可视化界面
 

#ls --help:可以查看帮助文档
#man ls:可以进行用户手册的查看操作
空格键:显示手册页的下一屏
Enter键:一次滚动手册页的一行
b:回滚一屏
f:前滚一屏
q:退出man命令
h:列出所有功能键
/word:搜索word字符串
#history:将执行过的命令列举出来
#ssh ip地址:进行对应的远程连接
#cd :跳转路径
相对路径:根据当前目录进行跳转时的方式
绝对路径:从/目录开始的路径

。。上级的目录
。 当前目录
- 返回上一级所在的目录
~ 返回当前用户所在的目录
#ls:列出当前的文件以及文件夹
-a:显示指定目录下所有子目录与文件,包括隐藏文件
-l:以列表方式显示文件的详细信息
-h:配合 -l 以人性化的方式显示文件大小
*:文件代表文件名中所有字符
?:代表文件名中任意一个字符
[]:[”和“]”将字符组括起来,表示可以匹配字符组中的任意一个。“-”用于表示字符范围。
\:如果要使通配符作为普通字符使用,可以在其前面加上转义字符。“?”和“*”处于方括号内时不用使用转义字符就失去通配符的作用。

#more:分屏显示
#>:重定向
#>>:重定向(追加)
#pwd:查看当前所在路径
#touch:进行对应文件的创建操作
#mkdir:进行对应文件夹的创建操作
#rmdir:删除空的文件夹的操作
#rm:不仅可以删除文件,还可以删除文件夹(是不是没有空 )
#|: 管道
#clear:进行清屏操作
#ps:进行对应操作系统中对应性能的查看操作
-a:显示终端上的所有进程,包括其他用户的进程
-u:显示进程的详细状态
-x:显示没有控制终端的进程
-w:显示加宽,以便显示更多的信息
-r:只显示正在运行的进程
-ef:查看对应的进程的pid和ppid

#top:动态显示进程,性能占用列表查看操作
M:根据内存使用量来排序
P:根据CPU占有率来排序
T:根据进程运行时间的长短来排序
U:可以根据后面输入的用户名来筛选进程
K:可以根据后面输入的PID来杀死进程。
q:退出
h:获得帮助
#kill [-signal] pid:终止进程 -9强制终止进程操作
#date:时间查看操作,可进行对应时间的重置操作
date [MMDDhhmm[[CC]YY][.ss]] +format
#cal:对应日期的查看操作 -y对应年和日志的显示
#df:检测文件系统的磁盘空间占用和空余情况,可以显示所有文件系统对节点和磁盘块的使用情况
-a:显示所有文件系统的磁盘使用情况
-m:以1024字节为单位显示
-t:显示各指定文件系统的磁盘空间使用情况
-T:显示文件系统
#du:用于统计目录或文件所占磁盘空间的大小,该命令的执行结果与df类似,du更侧重于磁盘的使用状况。
-a:递归显示指定目录中各文件和子目录中文件占用的数据块
-s:显示指定文件或目录占用的数据块
-b:以字节为单位显示磁盘占用情况
-l:计算所有文件大小,对硬链接文件计算多次
#shutdown:关机操作 
-h now 立即关机
#reboot:重新启动操作系统
#shutdown –r now:重新启动操作系统,shutdown会给别的用户提示
#shutdown -h now:立刻关机,其中now相当于时间为0的状态
#shutdown -h 20:25:系统在今天的20:25 会关机
#shutdown -h +10:系统再过十分钟后自动关机
#init: 0 关机 6 重启
#ping:查看制定ip址网络通道是否畅通
#ifconfig:查看当前操作系统的ip地址
#ifconfig ens33 192.168.12.118:进行当前系统的ip地址的修改操作
#sudo:提取用户权限
#ln:建立连接文件(ln 源文件 链接文件)
-s:软连接标识(ln -s 源文件 链接文件)
#which:查看命令指定的位置

----------用户、权限管理----------
#whoami:查看当前系统当前账号的用户名。可通过cat /etc/passwd查看系统用户信息。
#who:查看当前所有登录系统的用户信息
-m或am:只显示运行who命令的用户名、登录终端和登录时间 I
-q或--count:只显示用户的登录账号和登录用户的数量
-u:在登录时间后显示该用户最后一次操作到当前的时间间隔
-u或--heading:显示列标题
#ping ip地址:判断网络是否可以ping通
#exit:退出登录账户
如果是图形界面,退出当前终端
如果是使用ssh远程登录,退出登陆账户
如果是切换后的登陆用户,退出则返回上一个登陆账号
#su:切换用户
-:切换工作目录
root:切换到root用户
普通用户:切换到普通用户

#groupadd:用户群组的添加操作

#groupdel:用户群组的删除操作

#usermod:修改用户所在组(使用方法:usermod -g 用户组 用户名)

#useradd:添加用户账号
-d:指定用户登录系统时的主目录,如果不使用该参数,系统自动在/home目录下建立与用户名同名目录为主目录
-m:自动建立目录
-g:指定组名称
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:查看系统当前用户名
#passwd:超级用户可以使用passwd命令为普通用户设置或修改用户口令
#userdel 删除用户 
-r:强制删除
#sudo -s 直接切换到超级管理员

#usermod:变更用户所在组 usermod -g wh

#chmod:user u group g other o 进行对应的用户权限的分配操作(chmod o+w file 给文件file的其它用户增加写权限:)
u:user 表示该文件的所有者
g:group 表示与该文件的所有者属于同一组( group )者,即用户组
o:other 表示其他以外的人
a:all 表示这三者皆是

+:增加权限
-:撤销权限
=:设定权限

r:read 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。
w:write 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。
x:excute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。

#chown:目录或文件所有者的变化操作
#chgrp:目录和文件所有者所在组的变化操作

----------文件操作----------
#cat:查看或者合并文件内容
#cp:cp命令的功能是将给出的文件或目录复制到另一个文件或目录中
-a:该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录,简单而言,保持文件原有属性。
-f:已经存在的目标文件而不提示
-i:交互式复制,在覆盖目标文件之前将给出提示要求用户确认
-r:若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名。
-v:显示拷贝进度
#mv:进行文件的剪切操作(可进行文件/文件夹的重命名操作)
-f:禁止交互式操作,如有覆盖也不会给出提示
-i:确认交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件
-v:显示移动进度

----------文件搜索----------
#grep:grep [-选项] ‘搜索内容串’文件名
-v:显示不包含匹配文本的所有行(相当于求反)
-n:显示匹配行及行号
-i:忽略大小写
#find:通常用来在特定的目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件。
find ./ -name test.sh:查找当前目录下所有名为test.sh的文件
find ./ -name '*.sh':查找当前目录下所有后缀为.sh的文件
find ./ -name "[A-Z]*":查找当前目录下所有以大写字母开头的文件
find /tmp -size 2M:查找在/tmp 目录下等于2M的文件
find /tmp -size +2M:查找在/tmp 目录下大于2M的文件
find /tmp -size -2M:查找在/tmp 目录下小于2M的文件
find ./ -size +4k -size -5M:查找当前目录下大于4k,小于5M的文件
find ./ -perm 0777:查找当前目录下权限为 777 的文件或目录

----------tar:归档管理----------
#tar:归档管理,tar使用格式 tar [参数] 打包文件名 文件
-c:生成档案文件,创建打包文件
-v:列出归档解档的详细过程,显示进度
-f:指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后
-t:列出档案中包含的文件
-x:解开档案文件
文件压缩解压:gzip
-d:进行gz文件的解压操作
-C:进行文件解压后指定路径的选择
方法1
//先创建一个tar包,对指定的包文件进行压缩操作。得到对应的文件tar.gz
tar -cvf gzip 
//将指定的tar.gz文件解压为指定的包文件tar,打开tar文件将内容释放出来
gzip -d tar -xcf

方法2
//直接将指定文件压缩为tar.gz文件
tar -zcvf (gz)
//直接将指定的tar.gz文件进行解压缩操作
tar -zxvf

方法3
//直接将指定文件压缩为bz2压缩文件
tar -jcvf (bz2)
//将指定的bz2压缩文件解压出来
tar -jxvf

方法4
//将指定文件压缩为zip格式的压缩包
zip xxx.zip *.py
//将zip格式的压缩包中的文件解压出来
unzip -d xxx xxx.zip
 
//查看linux中的虚拟环境
workon
 
//查看mongoDB的版本
pip list | grep mon
 
 
sudo mkdir -p /usr/local/redis/

sudo cp -r redis-3.2.3/* /usr/local/redis/
ls /usr/local/redis/

-------------
deb软件包的安装操作
sudo dpkg -i /path/.deb
 
--------------
项目启动
开启redis
>redis-server
 
查看redis是否打开
>redis-client
>ping
 
日志文件对应的查看操作
cat log
more log
 
tail -f log
 
 
 
 
 
上一篇:Swift中扩展的使用


下一篇:k3生成解决方案时错误处理