Loading

Linux常用的命令

 
 
 

1、文件目录操作命令

1.1、ls ----列出目标目录中所有的子目录和文件

示例:
例一:列出/home/peidachang文件夹下的所有文件和目录的详细资料
命令:ls -l -R /home/peidachang
例二:列出当前目录中所有以“t”开头的目录的详细内容,可以使用如下命令:
命令:ls -l t* 
例六:计算当前目录下的文件数和目录数
命令:
ls -l * |grep "^-"|wc -l  ---文件个数  
ls -l * |grep "^d"|wc -l    ---目录个数
 
1.2、cd ----切换当前目录至指定目录
示例:
例一:进入系统根目录
命令:cd / 
例二:使用cd 命令进入当前用户主目录
“当前用户主目录”和“系统根目录”是两个不同的概念。进入当前用户主目录有两个方法。
命令1:cd
命令2:cd ~
例三:跳转到指定目录
命令:cd /opt/soft
例四:返回进入此目录之前所在的目录
命令:cd -
 
1.3、pwd ----查看”当前工作目录“的完整路径
示例:
实例1:用 pwd 命令查看默认工作目录的完整路径
命令:pwd 
 
1.4、mkdir ----创建文件夹或者目录
通过 mkdir 命令可以实现在指定位置创建以DirName(指定的文件名)命名的文件夹或目录。
要创建文件夹或目录的用户必须对所创建的文件夹的父文件夹具有写权限。并且,所创建的文件夹(目录)不能与其父目录(即父文件夹)中的文件名重名,即同一个目录下不能有同名的(区分大小写)。
示例:
 
1.5、rm ----删除一个目录中的一个或多个文件或目录
如果没有使用- r选项,则rm不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状
命令参数:
    -f, --force    忽略不存在的文件,从不给出提示。
    -i, --interactive 进行交互式删除
    -r, -R, --recursive   指示rm将参数中列出的全部目录和子目录均递归地删除。
    -v, --verbose    详细显示进行的步骤
       --help     显示此帮助信息并退出
       --version  输出版本信息并退出
示例:
实例一:删除文件file,系统会先询问是否删除。 
命令:
rm 文件名
说明:
输入rm log.log命令后,系统会询问是否删除,输入y后就会删除文件,不想删除则数据n。
 
实例二:强行删除file,系统不再提示。 
命令:
rm -f log1.log
 
实例三:rm -rf test2命令会将 test2 子目录及子目录中所有档案删除,并且不用一一确认
命令:
rm -rf  test2 
 
 
1.6、rmdir 删除空目录,一个目录被删除之前必须是空的。
 
1.7、touch 创建新的文件
 
1.8、mv 移动文件或者将文件改名
移动的过程是
mv a.txt a1.txt ----第二个参数是文件,将第一个文件重命名
mv a.txt ../test -----第二个参数是目录,将第一个文件移动。
 
1.9、cp 复制文件或者目录
cp a.txt ../zhangxueTest --复制单文件到另一个目录
cp -a ../zhangxueTest ../zhangxueText1 --- -a 复制一个目录到另一个目录
 
1.10、cat命令的用途是连接文件或标准输入并打印
cat -n log2012.log log2013.log  ---- 把 log2012.log 的文件内容加上行号后输入 log2013.log 这个文件里
 
1.11、more向下分页显示 会以一页一页的显示方便使用者逐页阅读
more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。more命令从前向后读取文件,因此在启动时就加载整个文件。
more +3 log2012.log ---显示文件中从第3行起的内容
more -5 log2012.log ----设定每屏显示行数 
ls -l  | more -5 ------每页显示5个文件 列一个目录下的文件,由于内容太多,我们应该学会用more来分页显示。这得和管道 | 结合起来 
 
1.12、less,可以随意浏览文件,向前向后
less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件
ps -ef |less -----ps查看进程信息并通过less分页显示 
 history | less ------查看命令历史使用记录并通过less分页显示
 
1.13、head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。 
head -n 5 log2014.log ----显示文件的前n行
head -n -6 log2014.log -------输出文件除了最后n行的全部内容
 
1.14、tail 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
tail -n 5 log2014.log ----显示文件末尾n行内容
tail -f test.log -----循环查看文件内容
 
 
 
==========================================================================================
 
 
2、文件查找命令
2.1、which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
 
2.2、whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置
 
2.3、find 用于在文件树种查找文件,并作出相应的处理
 
==========================================================================================
 
3、文件和目录属性
 
3.1、linux目录结构 ---有道云有详细的文档
 
 
ls -lih ---ls -l 列出来的内容少了第一列
第一列:inode
第二列:文件种类和权限;
第三列: 硬链接个数;
第四列: 属主;
第五列:所归属的组;
第六列:文件或目录的大小;
第七列和第八列:最后访问或修改时间;
第九列:文件名或目录名
 
==========================================================================================
 
 
4、文件打包上传和下载
 
4.1、用SecureCRT来上传和下载文件
一.在使用SecureCRT上传下载之前需要给服务器安装lrzsz:
1、从下面的地址下载 lrzsz-0.12.20.tar.gz
http://down1.chinaunix.net/distfiles/lrzsz-0.12.20.tar.gz
2、查看里面的INSTALL文档了解安装参数说明和细节
3、解压文件
tar zxvf lrzsz-0.12.20.tar.gz
4、进入目录
cd lrzsz-0.12.20
5、./configure --prefix=/usr/local/lrzsz
6、make
7、make install
8、建立软链接
#cd /usr/bin
#ln -s /usr/local/lrzsz/bin/lrz rz
#ln -s /usr/local/lrzsz/bin/lsz sz
9、测试
运行 rz 弹出SecureCRT上传窗口,用SecureCRT来上传和下载文件。
 
4.2、tar ---压缩和解压文件
打包、压缩文件 zcvf
tar -cvf log.tar log2012.log   --- 仅打包,不压缩! 
tar -zcvf log.tar.gz log2012.log   ----打包后,以 gzip 压缩 
tar -zcvf log.tar.bz2 log2012.log  ---- 打包后,以 bzip2 压缩
解压文件  zxvf
tar -zxvf /opt/soft/test/log.tar.gz -----将tar 包解压缩
 
4.3、gzip ---压缩文件,名称后面会多出".gz"的扩展名
 
==========================================================================================
 
5、linux文件权限设置
5.1、chmod 修改文件权限
chmod  777 Test.sh
补充:chmod是分配文件权限,一般后面会带三个数字,例如  chmod  abc  Test.sh   (abc代表三个数字,三个数字其实是对应的二进制)
          a:是文件所有者的权限        b:与文件所有者同属一个用户组的其他按用户的权限              c:其他用户组的权限
          权限一共有三种   r(可读)   w(可写)    x(可执行)    其中  有可读r权限,则r是4     有可写w权限,则w是2     有可执行x权限,则x是1       (其实是二进制111,r是第一个1代表十进制4  , w是第二个1代表2,x是第三个1代表1)
          所以一共有四种权限分配(默认都是可读的)   ①    rw- (可读可写不可执行): 二进制是110   转化为十进制是4+2 = 6  
                                                                                         ②    r-x(可读不可写可执行):二进制是101   转化为十进制是4+1 = 5
                                                                                         ③    rwx(可读可写可执行) :二进制是111    转化为十进制是4+2+1 = 7
                                                                                          ④   r--(只可读):二进制100   转化为十进制是4
           例如  chmod  777 Test.sh(所有人都有可读可写可执行的权限)
                    chmod  765 Test.sh(文件所有者有所有权限,同用户组的有读写权限,不同组的其他用户有读和执行权限)
 
5.2、chgrp命令可采用群组名称或群组识别码的方式改变文件或目录的所属群组。使用权限是超级用户
 
5.3、chown改变文件的拥有者和群组。
 
在更改文件的所有者或所属群组时,可以使用用户名称和用户识别码设置。普通用户不能将自己的文件改变成其他的拥有者。其操作权限一般为管理员。
 
==========================================================================================
 
6、磁盘存储相关
6.1、df检查linux服务器的文件系统的磁盘空间占用情况
6.2、du显示每个文件和目录的磁盘使用空间
 
 
==========================================================================================
 
 
7、性能监控和优化命令
 
7.1、top显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等
7.2、free 命令显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存。共享内存将被忽略
7.3、vmstart 用来显示虚拟内存的信息
7.4、iostat方便查看CPU、网卡、tty设备、磁盘、CD-ROM 等等设备的活动情况, 负载信息
7.5、lsof用于查看你进程开打的文件,打开文件的进程,进程打开的端口(TCP、UDP)。找回/恢复删除的文件
 
 
==========================================================================================
 
8、网络命令
 
8.1、ifconfig命令用来查看和配置网络设备。当网络环境发生改变时可通过此命令对网络进行相应的配置
8.2、route命令是用于操作基于内核ip路由表
它的主要作用是创建一个静态路由让指定一个主机或者一个网络通过一个网络接口,如eth0。当使用"add"或者"del"参数时,路由表被修改,如果没有参数,则显示路由表当前的内容。
8.3、ping 用来测试与目标主机的连通性
 
 
==========================================================================================
 
9、其他命令
9.1、ln给文件创建链接,软连接和硬连接
软链接:
1.软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
2.软链接可以 跨文件系统 ,硬链接不可以
3.软链接可以对一个不存在的文件名进行链接
4.软链接可以对目录进行链接
硬链接:
1.硬链接,以文件副本的形式存在。但不占用实际空间。
2.不允许给目录创建硬链接
 
ln -s log2013.log link2013 -----给文件创建软链接
ln log2013.log ln2013 ------给文件创建硬链接
 
9.2、diff命令能比较单个文件或者目录内容
diff log2013.log log2014.log  -c ------比较两个文件并且上下文输出格式
 
9.3、date 可以用来显示或设定系统的日期与时间
 
date ------2012年 12月 08日 星期六 08:31:35 CST
date '+%c' ------2012年12月08日 星期六 08时34分44秒
date '+%D'
date '+%x' ----2012年12月08日
date '+%T'
date '+%X' -----08时35分54秒
 
9.4、cal命令可以用来显示公历(阳历)日历
cal ------显示当前月份日历
cal 9 2012 --------显示指定月份的日历
cal -j ------显示距离1月1日已经过去的天数
 
9.5、grep,使用正则过滤搜索内容
ps -ef|grep svn ----查找指定进程。ps -ef显示出所有进程
 
9.6、wc统计指定文件中的字节数、字数、行数,并将统计结果显示输出
wc test.txt ----查看文件的字节数、字数、行数
ls -l | wc -l -----用来统计当前目录下的文件数 注意:数量中包含当前目录。所以结果中真正的文件数应该是数字-1
 
9.7、ps用来显示当前进程的状态
linux上进程有5种状态: 
1. 运行(正在运行或在运行队列中等待) 
2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 
3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生) 
4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放) 
5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行) 
 
ps -ef -----显示所有进程信息,连同命令行
 
9.8、watch 可以将命令的输出结果输出到标准输出设备,多用于周期性执行命令/定时执行命令
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

posted @ 2019-04-11 15:56  爱笑的眼睛真美  阅读(203)  评论(0编辑  收藏  举报