学习笔记

来源:互联网 发布:librosa有c语言版本吗 编辑:程序博客网 时间:2024/06/10 07:07

第四讲 Linux常用命令
4.1.1 Linux常用命令-文件处理命令-命令格式与目录处理命令ls

clear 清屏命令ls -l #l代表longls -a #a代表allls -h #h代表human 人性化显示(更改文件大小显示格式)ls -ld #ls -i #查询文件的iNodels -l的意义- --- --- ----代表文件类型:-为二进制普通文件 l为软连接 d为文件夹第一个三个-代表u user权限第二个三个-代表g group权限第三个三个-代表o other权限r 读w 写x 执行

4.1.2 Linux常用命令-文件处理命令-目录处理命令

mkdir 目录创建命令mkdir abc#在当前目录创建abc目录mkdir -p abc/abc/aa #在当前目录递归创建文件夹mkdir abc abd#在当前目录同时创建abc和abd目录cd 目录切换命令cd 目录名cd ..#返回上一层. 当前目录pwd #print working directoryrmdir #remove empty directories 目录删除命令rmdir 文件名cp copy命令cp 文件路径 目的地 #复制文件cp -r /abc/abc/aa /tmp#复制目录cp /abc/a.log /abc/b.log /tmp #同时复制多个文件cp -p /abc/a.log /abc/b.log /tmp #保持和原文件属性一致#复制同时改名cp -r /abc /tem/abc #abc原来不存在mv move改名和剪切命令rm 删除命令rm -r #删除目录rm -f #强制执行

4.1.3 Linux常用命令-文件处理命令-文件处理命令

touch filename#文件创建cat -n #读取文件 -n显示行数 tac #反向显示more #分页显示文件 可以向下翻页但不能回头(回车一行行看 空格翻页看) q 退出less #可以回退看 ↑可以回退看 ↓可以向下看 /关键字  可以查询head -n#显示文章头几行 n表示显示几行tail -n#显示末几行 n表示显示几行,可以加-f 动态显示文件内容

4.1.4 Linux常用命令-文件处理命令-链接命令

ls -s 文件路径/文件名 目标路径/目标文件名 #创建软连接ls 文件路径/文件名 目标路径/目标文件名#创建硬链接软连接相当于windows的快捷方式,安装文件被删除,快捷方式失效硬链接iNode与原文件相同(不能跨分区创建软连接) 与原文件同步更新 原文件删除不影响链接文件 不能对目录使用硬链接

4.2.1 Linux常用命令-权限管理命令-权限管理命令chmod

chmod #change the permissions mode of a filechmod {ugoa} {+-=} {rwx} [文件或目录] #user group other all 增加 删去 确定权限  r=4 w=2 x=1chmod 777 文件或目录#777代表文件权限 -R 递归改变文件或目录权限rwx的意义对于file: r:cat more less head。。。           w:vim           x:文件问脚本 命令等等对于directory:           r:ls           w:touch mkdir rmdir rm           x:cd

4.2.2 Linux常用命令-权限管理命令-其他权限管理命令

chgrp #change file group ownershipchgrp 用户组 文件或目录#更改文件或目录的所属组chown 类似chgrpumask -S #查看新建文件或目录的缺省权限,注意创建的文件一般都没有x执行权限umask不带参数显示一堆数字,实际代表的权限如下:比如umask显示 022实际权限: 777 - 022 = 755(个人总结,有误请指正)

4.3.1 Linux常用命令-文件搜索命令-文件搜索命令find

find [搜索范围] [匹配条件]find -name 关键字#查找文件名为特殊文字的文件 *表示任意多个字符 ?代表一个任意字符 -iname忽略大小写find -size +-=数字# +表示大于 -表示小于 =表示等于 数字表示字节 1个数据块 512字节  0.5K (1K是2个数据块 1M是2048个数据块)find -user #根据用户查找 -group根据用户组查找find -acmin -cmin -mmin -number#根据访问时间 修改文件属性时间 修改文件内容时间查找 加上时间表示查询number分钟内的文件find -type -文件类型#f file   d 目录  l链接find -inum #根据i节点查找多条件取&&:-a 多条件取||:-o对查询结果操作 -exec/-ok {} \;#区别在于ok会询问用户

4.3.2 Linux常用命令-文件搜索命令-其他文件搜索命令

locate 文件名#搜索文件速度非常快 新创建的文件查找需要updatedb来更新文件数据库,否则无法找到 但是无法搜索到/tmp文件下的目录which 命令名称#搜索命令所在目录及别名信息whereis 命令名称#搜索命令所在目录及帮助文件的路径以上三个都是搜索文件名,而grep用于搜索文件内容grep [选项] 查询关键字 [寻找文件路径+文件名] #在文件中搜索grep -i #不区分大小写grep -v #排除指定字符串

4.4 Linux常用命令-帮助命令

man 命令名称/配置文件的名称 #查询某命令的帮助信息或者某配置文件的帮助信息,使用wahtis查询关键字,结果中列出的数字(1)代表命令(5)代表配置文件whatis 命令名称/配置文件#查询简短介绍信息apropos 配置文件名#查询配置文件简短介绍info #跟man的功能大体相似,显示形式不同shell:内置解释器--把命令翻译成机器可以看懂的语言 shell内置命令:如果使用man 命令名称 查询结果第一行显示为bash_builtin,则该命令是shell内置命令在接下来几行也列出了一堆shell内置命令,查询这些内置命令时应该使用help命令help shell内置命令名称

4.5 Linux常用命令-简单用户管理命令

useradd 用户名#添加用户passwd 用户名#更改用户who #查询当前用户信息 用户名 登录终端 最后登录时间 登录ip(不写为本机登录) #tty1为本地登录 其他为远程登录w#得到更详细用户登录信息 uptime可以得到w命令的第一行信息up:机器开机时间n user:当前登录用户数load average:负载情况 数字越大负载越大IDLE累计空闲时间JCPU累计占用CPU时间PCPU用户操作占用CPU的时间WHAT 执行的命令

4.6 Linux常用命令-压缩解压命令 gzip tar zip bzip2

压缩格式.gz  gzip只能压缩文件,不可压缩目录gzip 文件名#将文件压缩,原文件不在存在,不保留原文件解压缩:(压缩文件不再存在,不保留原文件)gzip -d 压缩文件名gunzip 压缩文件名压缩格式.tar.gz#打包命令tar -cvfz 压缩后文件名 打包目录#保留原文件-c#打包,create-v#打包后显示详细信息-f#use archive file or device archive-z#压缩 tar只是打包命令,加了-z才是压缩,即打包并压缩压缩时遇到tar: Removing leading `/' from member names原来执行tar -zcf aa.tar /tmp/aaa使用的是绝对路径要执行tar -zcf aa.tar ./aaa才行,使用相对路径加-P(大写)也可以,但是要写在-zcf前面,否则会被当成文件名比如tar -Pzcf aa.tar /tmp/aaa或者tar -P -zcf aa.tar /tmp/aaa解压缩:tar -zxf 压缩包名-x #解包-v #显示详细信息-f #指定压缩文件-z #解压缩解压缩: 遇到压缩时的问题同样加-P 压缩格式.zip(保留原文件 可压缩目录 压缩比一般)zip -r 压缩后文件名 目录或文件#-r可以压缩目录解压缩:unzip 压缩包 压缩格式.bz2#gzip升级版(增加-k可以保留原文件 压缩比惊人) bzip2 -k 文件#-k 压缩并保留原文件tar -cjf abc.tar.bz2 目录名 #tar与bzip联合使用:将tar的-czf改成-cjfbunzip2 -k 压缩文件名#解压缩 -k用来保留原文件与tar一起使用:tar -xjf 压缩文件名 

4.7 Linux常用命令-网络命令

write 用户名#给指定用户发信息 ctrl+D保存并发送wall message #write all 给所有用户发送广播ping ip地址#测试网络连通性 与windows区别在于,Linux ping没有次数限制,除非加-c 指定ping的次数ifconfig 网卡名称 ip地址#临时设置ip地址ifconfig #查看网卡信息[root@localhost ~]# ifconfigeth0      Link encap:Ethernet(网络类型)  HWaddr 00:0C:29:3F:FD:2F  (网卡物理地址 MAC地址)          inet addr:192.168.0.50(ip)  Bcast:192.168.0.255(广播地址)  Mask:255.255.255.0(子网掩码)          inet6 addr: fe80::20c:29ff:fe3f:fd2f/64 Scope:Link          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1          RX packets:183 errors:0 dropped:0 overruns:0 frame:0 (接受包的总数 error 丢包等等情况)          TX packets:42 errors:0 dropped:0 overruns:0 carrier:0 (发送包的总数 error 丢包等等情况)          collisions:0 txqueuelen:1000           RX bytes:14423 (14.0 KiB)  TX bytes:6457 (6.3 KiB)          Interrupt:19 Base address:0x2000 lo        Link encap:Local Loopback   #回环网卡,不插网线仍可ping通          inet addr:127.0.0.1  Mask:255.0.0.0          inet6 addr: ::1/128 Scope:Host          UP LOOPBACK RUNNING  MTU:16436  Metric:1          RX packets:4 errors:0 dropped:0 overruns:0 frame:0          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0          collisions:0 txqueuelen:0           RX bytes:344 (344.0 b)  TX bytes:344 (344.0 b)mail 用户名#给指定用户发送邮件 ctrl+D保存并发送mail #查看邮件 [root@localhost ~]# mailHeirloom Mail version 12.4 7/29/08.  Type ? for help."/var/spool/mail/root": 1 message 1 new>N  1 root                  Tue Aug  8 06:39  23/625   "123"#N 1代表未读1封 发件人root 发送时间& 1#查看第一封邮件#以下为邮件信息Message  1:From root@localhost.localdomain  Tue Aug  8 06:39:06 2017Return-Path: <root@localhost.localdomain>X-Original-To: rootDelivered-To: root@localhost.localdomainDate: Tue, 08 Aug 2017 06:39:05 +0800To: root@localhost.localdomainSubject: 123User-Agent: Heirloom mailx 12.4 7/29/08Content-Type: text/plain; charset=us-asciiFrom: root@localhost.localdomain (root)Status: Rdsdsadsdfdsdsadassaddsads& h#查看邮件列表>   1 root                  Tue Aug  8 06:39  23/625   "123"& d 1#删除第一封邮件& hNo applicable messages& q#退出邮件[root@localhost ~]# last#列出目前与过去登入系统的所有用户信息[root@localhost ~]# lastroot     pts/0        192.168.0.101    Tue Aug  8 06:30   still logged in   root     tty5                          Tue Aug  8 06:26   still logged in   root     tty1                          Tue Aug  8 06:25   still logged in   reboot   system boot  2.6.32-431.el6.x Tue Aug  8 06:24 - 06:49  (00:25)    root     tty1                          Mon Aug  7 07:07 - crash  (23:17)    reboot   system boot  2.6.32-431.el6.x Mon Aug  7 07:06 - 06:49  (23:43)    root     pts/0        192.168.0.103    Fri Aug  4 08:21 - crash (2+22:45)   root     tty1                          Fri Aug  4 07:43 - crash (2+23:22)   reboot   system boot  2.6.32-431.el6.x Fri Aug  4 07:41 - 06:49 (3+23:08)   用户     登录终端     登录ip           时间               操作lastlog#用户最后一次登录信息 用户名           端口     来自             最后登陆时间root             pts/0    192.168.0.10188 06:30:09 +0800 2017bin                                        **从未登录过**daemon                                     **从未登录过**adm                                        **从未登录过**lp                                         **从未登录过**sync                                       **从未登录过**lastlog -u 用户id#查看具体用户登录信息traceroute 网址#显示数据包到主机间的路径 当无法登录某网站时,可以排查那边的网络问题netstat #显示网络相关信息-t:查询TCP协议网络信息 可靠,三次握手-u:查询UDP协议网络信息 速度快,不可靠-l:监听-r:路由-n:显示IP地址和端口号例子:[root@localhost ~]# netstat -tlunActive Internet connections (only servers)Proto Recv-Q Send-Q Local Address               Foreign Address             State      tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN      tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      tcp        0      0 0.0.0.0:53504               0.0.0.0:*                   LISTEN      tcp        0      0 :::111                      :::*                        LISTEN      tcp        0      0 :::38416                    :::*                        LISTEN      tcp        0      0 :::22                       :::*                        LISTEN      tcp        0      0 ::1:631                     :::*                        LISTEN      tcp        0      0 ::1:25                      :::*                        LISTEN      udp        0      0 0.0.0.0:111                 0.0.0.0:*                               udp        0      0 0.0.0.0:631                 0.0.0.0:*                               udp        0      0 0.0.0.0:815                 0.0.0.0:*                               udp        0      0 0.0.0.0:53683               0.0.0.0:*                               udp        0      0 0.0.0.0:834                 0.0.0.0:*                               udp        0      0 :::111                      :::*                                    udp        0      0 :::51606                    :::*                                    udp        0      0 :::815                      :::*                            协议类型  0代表网络通畅                         远程ip和端口               只有tcp有监听状态                   本地ip+端口                  netstat -an#与上面命令区别在于,本命令可以查看正在连接的网络程序netstat -rn#查询本机路由表[root@localhost ~]# netstat -rnKernel IP routing tableDestination     Gateway         Genmask         Flags   MSS Window  irtt Iface192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0setup#更改IP地址,只在Redhat有效,永久生效service network restart#重启网络服务mount#挂载命令 设备文件名是指定好的,记好即可--》使用ll /dev/cdrom可以查看mount [-t 文件系统] 设备文件名 挂载点mount -t iso9660 /dev/sr0 /mount/cdrom#-t iso9660可以省略umount 设备文件名 #卸载 设备文件名

4.8 Linux常用命令-关机重启命令

强烈推荐使用shutdown关机命令,其他命令可能导致服务未正常关闭,导致硬件损坏等现象shutdown -h 20:30#-h代表关机 20:30关机,也可写数字,代表n分钟后关机shutdown -r 数字#-r代表重启 用法跟关机类似shutdown -c#取消关机命令其他关机命令(了解)haltpoweroffinit 0其他重启命令(了解)rebootinit 6系统运行级别0 关机1 单用户#类似windows的安全模式2 不完全多用户,不含NFS服务(NFS Network File System 文件共享服务 跟3很像)3 完全多用户4 未分配5 图形界面6 重启以上内容可在文件查询:[root@localhost ~]# cat /etc/inittab# inittab is only used by upstart for the default runlevel.## ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.## System initialization is started by /etc/init/rcS.conf## Individual runlevels are started by /etc/init/rc.conf## Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf## Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,# with configuration in /etc/sysconfig/init.## For information on how to write upstart event handlers, or how# upstart works, see init(5), init(8), and initctl(8).## Default runlevel. The runlevels used are:#   0 - halt (Do NOT set initdefault to this)#   1 - Single user mode#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)#   3 - Full multiuser mode#   4 - unused#   5 - X11#   6 - reboot (Do NOT set initdefault to this)# id:3:initdefault:[root@localhost ~]# id:3:initdefault:#修改配置文件的这些字符可以修改默认级别,06不要设置为默认级别,否则无法启动runlevel#查看当前运行级别[root@localhost ~]# runlevelN 3前一级别 当前级别logout#退出登录,离开电脑需要退出登录