linux基本命令学习笔记.doc_第1页
linux基本命令学习笔记.doc_第2页
linux基本命令学习笔记.doc_第3页
linux基本命令学习笔记.doc_第4页
linux基本命令学习笔记.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一天:linux学习笔记 1.推荐书籍 : 鸟哥的Linux私房菜 基础学习篇(第三版) 2.内核版本命令:uname -a; 发行版本命令 cat etcissue 3.u盘安装linux 1.utraiso(引导盘制作工具) 将linux iso文件 制作到u盘里 做成引导盘 2.修改bios 为u盘启动; 3.安装,安装时最好拔掉网线,安装会快一点; 4.更新软件包; 5.重启; 4.远程查看老师机的桌面 vncviewer 15 如果没有vncviewer命令,需要安装一下:sudo apt-get install vncviewer 5./usr/local 是存放你新装的软件的目录。 /bin 目录用于存放普通用户可执行的命令,系统中的任何用户都可以执行该目录中的命令 /boot 目录用于存放linux操作系统启动时所需使用的文件,为了系统能够启动, 通常该目录需要使用独立的分区,这样boot分区和根分区相互独立可以保证启动文件更加安全可靠。 /mnt 目录中的子目录用于作为系统中可移动存储设备的挂载点。如光驱。 /root 目录是超级用户root的宿主目录,可见超级用户在系统中与普通用户有很大差异。 /sbin /tmp 为系统临时目录,很多命令程序在该目录中存放临时使用的文件。 /usr 目录用于存放大量的系统应用程序及相关文件。如说明文档、库文件等。 /var 目录用于存放系统中经常变化的文件,如日志文件,用户邮件等。 /dev 目录用于存放系统中的所有设备文件,如光盘驱动器、硬盘等。 /etc 目录用于存放系统中的配置文件,linux 中的配置文件都是文本文件,可以使用相应的命令查看。 /home 目录用于存放系统中普通用户的宿主目录,每个用户在该目录下都有一个与用户同名的目录 6. 代表当前目录;.代表上一级目录;代表当前用户主目录;代表前一个工作目录 7.tree 查看目录结构 8.man的使用 man 3 printf 3表示从编号为3的帮助文件中查找 我们要找的是printf函数,所以应该在函数相关的帮助文件中查找 9.scp 从其他主机拷文件 scp 源 去处 scp akaedu15:/t59 ./ 将15上的t59文件拷到当前目录下第二天1.pwd 显示当前进程的工作目录 2.linux 发展方向 : 嵌入式应用方向 服务器开发方向(稳定安全) 3.touch 创建空文件 4.stat 查看文件属性 敲stat命令后会有Inode(I节点) 当links为1 时,节点号Inode和文件名一一对应 5.ls ls -ld 查看目录本身的详细信息 -a 列出隐藏文件(以.开头的文件) 建立隐藏文件的方法 touch .file 以.开头的为隐藏文件 表示可执行文件 表示软链接 ll 列出所有文件 相当于 ls -al la 除了.和.以外的所有文件 6.ls -l 列出的文件的详细信息 -rw-r-r- 1 akaedu akaedu 72 2012-09-08 15:15 test.sh 属性 硬链接数 所有者 所属组 大小(字节) 时间 文件名 7.linux 下有8种文件类型: 1. - 普通文件 2. d 目录文件 3. l 符号链接 4. b 块设备文件 5. c 字符设备文件 6. named pipe 管道文件 7. socket 套接字 8. unknown (如windows下的rar文件) 8.cat 重定向 cat f1 f2 cat f1 f2 f3 f1 f2 结合起来重定向到f3 cat f1 阻塞等待输入 输入完成后用ctrl+c结束 将输入的内容存入f1 9.ln ln 源 硬链接 ln f.c f.link 硬链接与源文件同步更新 为什么会同步更新 这涉及到系统的文件管理结构 硬链接的文件的Inode(节点)相同 所以可以同步更新 linux 内核根据Inode对文件进行操作,它只认Inode 几个硬链接的文件Inode 相同,删除一个文件 硬链接数links 会减1 ls -i 查看文件的Inode 例:在/home/akaedu 下建立f1.c 在/home/aka 下创建硬链接的方法是 sudo ln f1.c /home/aka/f2.c 10.建立硬链接时,链接文件和被链接文件必须位于同一个文件系统中,并且不能建立指向目录的硬链接。 linux 有 / /home /swap 等文件系统 硬链接不能夸文件系统创建 相当于windows 下 c盘的文件不能在D盘中创建硬链接 11.硬链接数的含义 如果一个目录的硬链接数是3,表示可以通过3种途径进入该目录 12.cp -a 通常在拷贝目录时使用。它保留链接文件属性,并递归地拷贝目录 13.mv 在跨文件系统移动文件时,mv先拷贝,再将原有文件删除,而链至该文件的链接也将丢失(包括软硬链接) 14.rm linux 中的rm命令删除后很难恢复。 删除的本质是硬链接数减1 15.find -name 格式 find 目标位置 -name 文件名(全名)(文件名可以加单引号或双引号) 通配符 匹配0到多个字符 ? 匹配单个字符 例: find ./ -name f.*(或f.*或f.*) d?k 表示有两个字符不确定,只知道首尾字符 -size 按文件大小查找 以0.5为单位 例:find ./ -size +780 -a -size -800 -a 且 大于多少并且小于多少 -o 或 小于多少或大于多少 -type 按文件类型查找 普通文件(或硬链接) f 软链接 l 目录 d 例:find ./ -type d(或f或l) 天 -ctime -atime -mtime 分 -cmin -amin -mmin c change 属性改变 a access 访问过 m modify 内容被修改过 16.ctrl+l 是翻屏 reset 是重启终端(清屏) 17.which 查找一个或多个命令command 的程序文件所在,给出绝对路径 whereis 18.bin目录存放普通用户使用的命令 sbin目录存放超级用户使用的命令 19.grep 过滤 例: ps aux | grep init out 20.wc (word count) 统计给定文件中的字节数、字数、行数。 按下列顺序显示并且每项最多一列:行数、字数(大字)、字节数、文件名 大字的概念 有大字和小字之分 大字是两个空隔之间的称为大字 如:空隔jkdjgklj空隔 则两个空隔间为大字 21.chmod 改变文件或目录的访问权限 sudo 临时获得超级管理员权限 例:chmod u+x f.c g+w f.c o+wx f.c chmod u+x,g+w,o-r f.c 22.粘着位的概念 chmod 1777 如果对目录设粘着位 则只有三种人可以操作该目录:超级管理员 目录所有者 文件所有者 设文件为粘着位后,文件将长驻内存 如果断电将消失 23.用户间切换 su 临时用户切换为超级用户 sudo su 超级用户和普通用户间切换用 su 普通用户 24. r w x 对于文件和目录的含义 如果赋于文件权限 表示可以对文件内容进行修改、删除 而不能删除文件 也就是说能不能删除该文件不是文件的权限说了就算 如果赋于目录权限 表示可以对目录下的文件进行删除,添加文件等 r w x 文件 可以用cat more less 可以用gedit vi 需要是命令脚本等 tail 等命令 echo等 目录 可以ls等 可以rm touch mkdir等 可以cd 25.添加用户 sudo adduser aka1 查看用户信息 cat /etc/passwd chown 更改某个文件或目录的属主和属组 例:chown aka1 f.c 删除用户 sudo deluser aka1 26.linux对文件的管理是数字化管理 27.添加删除组 sudo addgroup gg1 sudo delgroup gg1 查看组信息 /etc/group chgrp 改变(指定)指定文件所属的用户组 例:chgrp gg1 f.c 28.gzip 压缩 特点:1.只能压文件不能压目录; 2.不保留原文件; 解压 gunzip tar 作用是打包 file命令 如果不知道一个文件是什么格式,可以用file进行查看 tar和gzip使用方法 打包压缩 tar -zcvf mtt.tar.gz 文件 文件 文件 . 解压缩 tar -zxvf mtt.tar.gz 不解压查看压缩文件 tar -tf mtt.tar.gz tar的命令参数可以不加 - 如:tar zcvf mtt.tar.gz zcvf 中的f表示指定压缩后的文件名,f后必须紧跟文件名,不能再接参数 -p 使用原来的属性 -N 时间(2012/11/13) 表示比“时间”新的打包 -exclude 除去某个文件以外的都打包 两个- 后面跟单词 一个 “-”后面跟字母 -C 解压到指定文件 注意:unix 系统有的不支持一步打包压缩 要分步 tar cvf xxx.tar -gzip xxx.tar windows linux 通用的压缩格式为 zip zip mtt.zip 文件 文件 . zip -r mtt.zip 文件 文件 . unzip mtt.zip 29.bzip2的用法 特点:不能压目录 例:tar -zcvf 是结合gzip进行压缩 tar -jcvf 是结合bzip2进行压缩 bzip2 f.c bzip2 -d f.c 解压缩 等同于 bunzip2 f.c bzip2 -k f.c 重点掌握:tar gzip bzip2的用法 gzip 比zip 好 bzip2比gzip好 补充:chown 更改某个文件或目录的属主和属组 例:把一个文件改为akaedu用户和nogroup用户组所有 $ sudo chown akaedu:nogroup file1 注意:1.chown 需要特权用户才能执行 2.一个文件的owner 和owning group是没有关联的。一个文件属于用户A,也属于用户组B,并不表示用户A属于用户组B第三天第二章 linux 基本命令进程、磁盘管理 1.who 查看目前登录系统的用户相关信息 tty8:表示图形界面 tty1tty6:表示字符界面 pts/0 pts/1 表示终端 2.ps 用户监控后台进程的工作情况 例:ps aux ps aux | grep init ps aux | grep tool ps aux | grep ftp ps aux | grep screen 3.过滤出当前目录下的目录文件 find ./ -type d ls -F | grep / 4.经验之谈 有时写程序时为了备份会创建一个硬链接所它存在一个地方,防止程序丢失。但有时会找不到这个硬链接 方法:ls -i 查出inode find -inum Inode 这样就可以找到 在当前目录下查找包含d的文件 ls | grep d 在当前目录下查找不包含d的文件 ls | grep -v d 5.敲入命令 ps aux 后出现如下: akaedu 2355 0.0 0.1 2760 1080 pts/2 R+ 12:45 0:00 ps aux akaedu 2327 0.0 0.3 6160 3280 pts/2 Ss 12:40 0:00 bash 其中 S 代表静止 R 代表正在运行 6.jobs 用来显示当前shell下正在运行哪些作业(即后台作业) 7.fg 把指定的后台作业或挂起作业移到前台运行 fgjob. 参数job 是一个或多个进程的PID,或者是命令名称,或者是作业号(作业号前面要带一个号) 如果在命令行的末尾加上字符,则shel为这个命令创建一个后台进程 8.bgjob. 把挂起的进程提到后台执行。其中job是一个或多个进程的PID、命令名称或者作业号,在参数前要带号 9.kill kill -SIGKILL pid 强制终止进程磁盘及文件系统管理 10.mount 加载文件系统 该命令使用权限是超级用户或/etc/fstab中允许的使用者 sudo fdisk -l sudo fdisk /dev/sd? -l 11.umount 卸载一个文件系统 该命令使用权限是超级用户或/etc/fstab中允许的使用者 12.df 可以理解为 disk free(但不是它的缩写) 查看剩余空间 df -t ext4 显示ext4文件系统的磁盘空间使用情况 列出各文件系统的节点使用情况 df -ia 13.du 可以理解为 disk used(但不是它的缩写) 统计目录(或文件)所占磁盘空间的大小 补充: 文件系统的概念 文件系统就是对数据的管理方式 几个例子:du -sh 取得总数 -h 是以人类可以理解的方式查看 14.mount 挂载时有中文乱码问题的解决方法: mount /dev/sdb1 /mnt/usb -o utf8 (-t vfat) 括号里的命令有的系统需要加上 15.查看设备的方式 cat /proc/partitions 16.dd 把指定的输入文件拷贝到指定的输出文件中,并且在拷贝过程中可以进行格式转换 例: dd if=m.c of=a.c bs=1 count=5网络管理 17.netstat 显示网络连接、路由表和网络接口信息,可以让用户得知目前都有哪些网络连接正在运作。 18.nslookup 查询一台机器的IP地址和其对应的域名。例:nslookup 19.ping 查看网络上的主机是否在工作 20.ftp 21.lftp lftp是一种ftp客户程序。它是以文本方式操作的,但是比起图形界面更为方便。lftp几乎具有bash的所有方便功能。Tab 补全,bookmark, queue,后台下载等可以得到支持。用户与ftp类似,主要指令如下: put 上传文件 mput 上传多个文件 get 下载文件 mget 下载多个文件 mirror 下载整个目录及其子目录 mirror -R 上传整个目录及其子目录 !command 调用本地shell执行命令command 注意:有的发行版可能缺省没有安装lftp工具,需要用户自己安装。如果是Debian或Ubuntu系统,则安装lftp软件包 22.telnet 23.man man 所在位置 /usr/share/man man各卷内容: 1.描述command 2.系统调用相关 3.库函数 4.特殊文件 5.文件格式 6.games 7.协议、变量等 8.系统管理调用的命令 如: ifconfig 9.kernel相关 例:man 3 printf 24.alias 25.echo echo $? 上次程序退出的返回值 26.date 27.clear 28.umask 以上几个命令可以在google 上或baidu上查找相关用法第三章 linux 常用服务配置 29.安装 ftp服务器 $sudo aptitude install vsftpd 开启 ftp $sudo /etc/init.d/vsftpd start 确认是否开启 $ps aux | grep ftp 配置ftp $sudo vi /etc/vsftpd.conf 重启ftp(配置后要重启) $sudo /etc/init.d/vsftpd restart 停止ftp $sudo /etc/init.d/vsftpd stop 30.登录 普通用户登录:ftp (本机登录,其他主机的话就登录服务器的ip) 输入ftp服务器的用户名 密码 登录 普通用户登录后可以访问/home/akaedu/也可以cd .到其他目录 可以执行 put get等命令,当然,要配置ftp服务的权限 匿名用户登录 除了配置文件中允许上传之外 还需要本地系统的ftp用户对目录有写权限 cd /srv/ftp sudo mkdir incoming sudo chown ftp:nogroup incoming 注意:如果用ftp命令匿名登录ftp服务器,在用户名处应输入anonymous密码任意;如果用lftp命令匿名登录,则只要命令行中没有提供用户名 和密码,默认都是以anonymous用户登录 31.lftp使用方法 1.lftp 2.login 服务器用户名 32.ftp 用户网络拷贝 scp -r 1.sudo apt-get install openssh-server 2.scp -r 目标用户名目标ip地址:(没有空格)要拷贝文件的绝对路径 文件要存放的路径 例:scp -r akaedu15:/home/akaedu/f.c ./第四天vi vim 讲解 1.bash 是shell的一种 2.vim是vi的升级版 vi是文本编辑器 没有菜单,只有命令 像eclipse是图形界面编辑器 3.vi有三种工作模式 1)命令模式(默认);2)文本模式;3)末行模式(有的参考书也叫编辑模式) 命令模式到文本模式的切换 a i o 文本模式到命令模式的切换 esc 命令模式到末行模式的切换 : 末行模式到命令模式的切换 esc 回车 vi不是一个排版程序,它只是一个文本编辑程序 在命令模式下输入插入命令i、附加命令a、打开命令o、修改命令c、取代命令r或替换命令s都可以进入文本输入模式。按esc回到命令模式下 多数文件管理命令都是在末行模式下执行的(如把编辑缓冲区的内容写到文件中等)。末行命令执行完后,vi自动回到命令模式。 :sp newfile 则分出一个窗口编辑newfile文件。 4.如何进行vi 键入vi和想要编辑(或建立)的文件名,便可进入vi 如果只键入vi,而不带文件名,也可以进入vi。之后在光标处键入文件内容,退出vi时,只需在退出命令后输入文件名即可。 5.如果希望在进入vi后,光标处于文件中特定的某行上,可以vi后加上任选项n,其中n为指定的行数 如:vi 5 example.c 表示打开文件example.c后光标定位到第5行 6.命令 :w newfile 将当前文件的内容保存到指定的newfile中,而原有文件保持不变。若newfile是一个已存在的文件,则vi在显示窗口的 状态行给出提示信息:File exists(use ! to override) 7.在屏幕上移动 vi最基本的移动光标命令为h(左移一个字符)、j(下移一行)、k(上移一行)、l(右移一个字符) 8.屏幕滚动 ctrl+u 将屏幕向前(文件头方向)翻滚半屏 ctrl+d 将屏幕向后(文件尾方向)翻滚半屏 状态命令 ctrl+g 命令显示在vi状态行上的vi状态信息,包括正在编辑的文件名、是否修改过、当前行号、文件的行数以及光标之前的行占整个文件的百分比 9.文本删除 dd 删除光标所在的整行。在dd前可加上一个数字n,表示删除当前行及其后n-1行的内容 10.撤消命令 u U 11.重复命令 . 在文本模式下输入一些内容后 回到命令模式下按 . 可以重复以上操作 12.文本行移动 :2,5m0 表示把文件中的第二行至第五行的内容移至文件头(第零行之下) 13.窗口的切分 末行模式下输入 :sp窗口切分为上下两半,下半边对应原来的文件,上半边打开新的文件。按ctrl w w在两个窗口间切换 14.块选择命令 在块的开头处按v,然后移动光标到块尾处,这之间的部分被高亮显示 按行块选:在块的第一行按V,然后移动光标到块的最后一行,这之前的所有行被高亮显示 块选择之后可以用y命令复制块、用d命令剪切块等等 15.查找替换命令 16.c语言编程中的有用命令 查看man page 命令模式下,将光标放在函数名上,按K可以直接察看man page 查看宏定义 把光标放在宏名上 按 d可以查看是哪个宏定义 17.vi +/printf f.c 打开f.c光标定位到printf vi f.c 17 打开f.c 光标定位到17行 vi f.c + 打开f.c光标定位到末尾 17 G 到17行 末行模式:17回车 到17行 找与“”对应的“” 光标移到上用号 查找 命令模式下 :/查找的内容 n 切换 18.替换 末行模式 :s/old/new :%s/old/new :%s/printf/println :%s/printf/println/g % 全文替换 但只替换第一行的第一个找到的关键字加上/g就会全部替换 :33,39s/old/new/g第33到39行的关键字进行替换 大小写忽略set ic 只对当前vi起作用 19.vsp 竖屏分屏ctrl ww 切换 20.将文件导入光标位置后 :r 文件名 :r /1.c 在vi下执行命令加“!” :!ls /test59 :r !date 将系统时间导入vi 查找指定搜索上下 21.gcc .预处理hello.c-hello.i gcc -E f.c -o f.i 预处理主要做的事情:引入头文件取消注释宏替换等 .编译hello.i-hello.s gcc -S f.i -o f.s 编译阶段做的事情:纠错,将代码解释成汇编代码 .汇编hello.s-hello.o gcc -c f.s -o f.o 汇编阶段将汇编代码变为机器指令 .链接hello.o-hello* 可执行文件 gcc f.o -o f 链接阶段做的事情:数据段合并和地址回填 22.注意: linux是不区分文件后缀名的但vi是以文件后缀名作为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论