Ubuntu学习日记--Lesson1:Linux基础和常用命令

来源:互联网 发布:乐视手机4g网络上不了 编辑:程序博客网 时间:2024/05/29 12:07

版权生命:文章系原创,转载请注明出处,多谢!

为了在Linux系统下用深度学习框架caffe,系统补习了一下Linux操作的知识,做些笔记,以备复习,或随时查看。

Lesson1:Linux基础和常用命令

#**************************************************************************Linux版本  内核版本 2.6.18(主次末)www.kernel.org发行版本 redhat,ubuntu,centOS等开源软件:源代码开源,可修改#**************************************************************************Linux与Windows系统的不同1.严格区分大小写2.所有内容以文件的形式保存,包括硬件---一切内容皆文件Linux不靠拓展名区分文件类型,而是靠权限区分:(常见的拓展名除外,这些约定俗成,只是习惯给管理员操作,可以不写,谢了更好,有颜色区别等优点)压缩包:.gz  .bz2  .tar.bz2  .tgz(不同的压缩,解压缩方法)二进制软件包:.rpm网页文件:.html  .php脚本文件:.sh配置文件:.confWindows下的程序不能直接在Linux中安装和运行(可以通过模拟器安装和执行),提高安全性字符界面的优势:占用系统资源更少减少了出错,被攻击的可能性,安全虚拟机VMware#**************************************************************************分区Partition:柜子内空间,逻辑上分隔---比如CDE,一开始按照需求规划好的。规矩:主分区:最多只能4个拓展分区:最多只能有1个;主分区+拓展分区最多有4个;不能写入数据,只能包含逻辑分区(是逻辑分区的容器)逻辑分区:可以有很多(a,b,软驱名字;c主分区1;最多23个(26-3))格式化:每个分区,打小格的过程。根据用户选定的文件系统(FAT16,FAT32,NTFS,EXT2,EXT3,EXT4,越来越先进),在分区中划分一片用于存放文件分配表,目录表等用于文件管理的磁盘空间。1.分区被分割为等大小的数据块block,默认4kb。文件被非连续放置。2.二维表:ID号(i节点号 Inode),修改时间,权限,block号#**************************************************************************硬件设备文件名IDE硬盘/dev/hd[a--d]                “/”代表根目录   dev:一级目录,保存的是硬件设备名;hd:描述硬盘的不同接口SATA/USB硬盘/dev/sd[a--p] 光驱/dev/cdrom或 /dev/hdc打印机(usb)/dev/usb/lp[0--15] 鼠标/dev/mouse分区(挂载点)的设备文件名/dev/hda1IDE硬盘接口,a:第一块硬盘;1:第一个分区(1234主分区专有,5之后给逻辑分区使用);/dev/sda1SCSI硬盘接口,SATA硬盘接口挂载(目录作为盘符):/ 根分区swap分区 交换分区,内存两倍/boot 启动分区,200M#****命令基本格式**********************************************************************3000  突击60--70个最常用命令,每个三遍以上lx@lx-B5400:~$ lx@lx-B5400:/$ root@lx-B5400:~#当前登陆用户名@主机名:当前用户所在目录(家目录)$或#   #(lx$的家目录(~表示):/home/lx;root#的家目录:/root)(/是根目录)pwd 显示当前所在的位置cd 目录切换#命令[选项][参数][]:可选当有多个选项时,可以写在一起-a 等价于 --allls [选项][文件或目录]-a 显示所有文件,包括隐藏文件-l 显示详细信息-d 查看目录属性(目录本身,而不是其下的文件)-h 人性化显示文件大小(以kb为单位)-i 显示inodedrwxr-xr-x   4 root root  1024  9月 20 17:52 boot文件类型:-  (-文件  d目录  l软连接文件)(另外,块设备文件,字符设备文件,套接字文件,管道符文件)权限:r--读    w--写    x--执行u所有者 g所属组 o其他人引用计数  lx所有者 lx所属组 大小(字节) 最后修改日期ls -ldh caffedrwxrwxr-x 17 lx lx 4.0K 10月 17 14:15 caffe#****目录处理命令**********************************************************************目录处理命令建立:mkdir -p [目录名](make directory)-p递归创建mkdir -p japan/cangls切换目录: cd [目录名] (change directory) cd ~  进入当前用户家目录 ~代表家目录 cd -  进入上次目录cd .. 进入上一级目录cd .  进入当前目录,.代表当前目录相对路径:参照当前所在目录,进行查找 cd ../japan/cangls (在当前目录,找上一级目录,然后再找/japan)绝对路径:从根目录开始指定,在任何目录下都能进入指定位置 cd /home/lx/caffe/fast-rcnn显示当前目录:pwd删除目录:rmdir [目录名] (remove directiries)(但不可删除非空目录)rmdir japan/canglsrm  [目录名] (可以删除非空目录)  (-r:可显示非空目录  -f 强制:没有提示信息)rm -rf /  Linux系统自杀!!复制命令:cp [选项][原文件或目录][目标目录] copy  (可 改名复制文件)选项:-r 复制目录 (当复制目录时。不加则是复制文件)date 显示当前系统日期时间ctrl+L 清屏ll 等价 ls -l   (命令别名)#**************************************************************************常用目录的作用/ 根目录  最高一级的目录/bin 命令保持目录。(根目录下的bin和sbin,usr目录下的bin和sbin,这四个目录都是用来保存系统命令的。区别在于bin普通用户就可以读取,sbinRoot才可以读取)/boot 启动目录,保存的用户的启动数据,启动相关文件。/dev 设备文件保持目录/etc 配置文件保存目录/home 普通用户的家目录  /root/lib 系统库保存目录(函数库,用的时候调用)/mnt 系统挂载目录(挂载外设)/media 挂载目录/tmp 临时目录,临时数据放置/sbin 命令保存目录/proc 直接写入内存的  (/proc和/sys保存的是内存的挂载点)/sys/usr 系统软件资源保存目录/usr/bin  系统命令/usr/sbin 系统命令/var 系统相关文档/home   /tmp  可以随意做东西的位置#****链接命令**********************************************************************产生链接文件:ln -s [原文件][目标文件]  link-s创建软连接1.类似windows的快捷方式2.有自己的i节点和block块,但数据块中保存的是原文间的文件号和i节点号,没有实际的数据3.软连接的文件权限都为:lrwxrwxrwx4.删原,软连接不能用。一改全改。5.原文件要写绝对路径。-h创建硬链接1.拥有相同的i节点和block块,可以看做是同一个文件2.可通过i节点识别,不能跨分区,不能针对目录使用3.一修改,都修改。删除其中任何一个其他的不受影响#****文件搜索命令**********************************************************************文件搜索命令 locate (比 find 快 )locate 文件名  在后台数据库按文件名搜索/var/lib/mlocate  #locate命令搜索的后台数据库  updatedb强制更新数据库#搜索的规则在 /etc/updatedb.conf配置文件中。PRUNE_BIND_MOUNTS="yes"#筛选规则生效PRUNENAMES=".git .bzr .hg .svn"  #不搜索,文件名中包括这些关键字的文件PRUNEPATHS="/tmp /var/spool /media /home/.ecryptfs" #这些目录中更新的文件就不搜索了PRUNEFS="NFS nfs nfs4 rpc_pipefs afs binfmt_misc proc smbfs autofs iso9660 ncpfs coda devpts ftpfs devfs mfs shfs sysfs cifs lustre tmpfs usbfs udf fuse.glusterfs fuse.sshfs curlftpfs ecryptfs fusesmb devtmpfs"  #不筛选这些文件系统命令搜索命令 whereis whichwhereis 命令名  (只能搜索系统命令,搜索命令所在的路径及帮助文档所在的位置)  (whoami  whatis)-b 只查找可执行文件-m 只查找帮助文件which 命令名  #搜索命令所在路径和别名文件搜索命令 find 最强大find [搜索范围][搜索条件]  #搜索文件#如果需要匹配,使用通配符,通配符是完全匹配。Linux中的通配符:*  匹配任意多个内容?  匹配任意一个字符[] 匹配任意一个中括号内的字符  ab[cd] 搜索abc或abd文件  *[cd]搜索以c结尾或者以d结尾的文件find / -name install.logfind / -name "install.log*"   find / -name "*" #所有文件-name-iname 不区分大小写-user 按照所有者搜索-nouser 查找没有所有者的文件(没有所有者的文件:1.内核创建的文件;2.外来文件)find /var/log -mtime +10 #查找10天前修改的文件-10 10天内修改10  10天当天修改的文件+10 10天前修改的文件atime 文件访问时间ctime 改变文件属性mtime 修改文件内容find .-size 25k #查找文件大小是25kb的文件 (.代表当前文件夹)-25k 小于25k (25M时也可执行) 25k +25k 大于25kfind .-inum 262422 #查找i节点是262422的文件find /etc -size +20k -a -size -50k #查找/etc目录下,大于20k并且小于50k的文件-a and 与 都满足-o or  或 两个条件满足一个就行find /etc -size +20k -a -size 50k -exec ls -lh {}\; #查找/etc 目录下,大于20k并且小于50k的文件,并显示详细信息。 #-exec ls -lh {} \; 对搜索结果执行操作,exec的标准格式,第一条的结果给第二条处理字符串搜索命令 grepgrep [选项] 字符串 文件名 #在文件当中匹配符合条件的字符串-i 忽略大小写-v 不包含这些字符串的文件grep -i "size" a.conffind 和 grep 的区别:find 在系统当中搜索符合条件的文件名,通配符匹配,完全匹配grep 在文件当中搜索符合条件的字符串,正则表达式进行匹配,包含匹配(只要有,就能匹配到)#**************************************************************************环境变量:定义的是系统搜索命令的路径。(比如,找到 pwd 这个命令,是在PATH的路径下逐个查找的)/home/lx/anaconda2/bin:/home/lx/anaconda2/bin:/usr/local/cuda-7.5/bin:/usr/local/sbin:/usr/local/binLinux中的通配符:*  匹配任意内容?  匹配任意一个字符[] 匹配任意一个中括号内的字符扇区:默认512k #****帮助命令**********************************************************************man 命令 #获取指定命令的帮助man ls #查看ls的帮助man man man -f 命令 #查看命令拥有哪个级别的帮助  相当于 whatis 命令man 5 passwd  #密码man 4 null man 8 ifconfigman -k 命令 #查看和命令相关的所有帮助  相当于:apropos 命令apropos passwd命令 --help #查看命令的选项help shell内部命令 #获取shell内部命令的帮助whereis cd #确定是否是shell内部命令help cd #获取内部命令帮助#**************************************************************************



1 0
原创粉丝点击