shell编程
文件后缀.sh
创建文件vi hello.sh #!/bin/bash增加账号:useradd zhangfei
设置密码:passwd XXX
进入账号 su XXX
删除账户 :userdel -r XXX
Linux
linux 根目录 /
目录:
bin:二进制文件即linux的可执行文件 boot:启动目录 dev:设备文件 etc:系统的配置文件 ^ home:用户 lib:库文件 media:多媒体 mmt:共享文件夹 opt:可选工具 proc:进程的相关信息 root:超级用户主目录 run:运行的进程信息 sbin:系统的二进制 srv:服务相关的信息 sys:系统文件 tmp:临时 usr:用户级别的目录 类似于共享数据资源 "c:/program files" ^ var:变量的信息查看当前目录:pwd ~ :当前用户的家目录 命令格式:命令[-选项][参数] 命令区分大小写,其中选项和参数是可选的中间采用空格隔开 ls -a 也显示隐藏目录 ls -l(ll) 显示详细信息 ls -al 查看当前用户的名称:whoami 用户切换: su xxx root 用户为# 用户切换退出 exit su 与exit搭配使用文件操作: 创建名字为filename的文件:touch filename (文件是黑色的,目录是蓝色的) 创建名字为filename的文件在dir目录下:touch dir/filename echo 回显 显示文件 echo hello >a.txt 把hello的字符串写入到a.txt中 echo hello >>a.txt 把hello的字符串写入追加到a.txt中 查看文件内容: cat a.txt 查看文件的内容 more fileName分屏查看文件各行内容,不支持回看(回车分屏向下看 空格翻一页 退出q less也可以) head -5 /fileName 看前5行内容 tail -5 /fileName 看后面5行 wc fileName 统计当前文件的行数 vi 中设置行数 :set nu目录操作: 创建普通文件夹: mkdir 目录名 创建多级父子文件夹: mkdir -p 目录/目录/目录 移动目录: mv hello/ a hello目录到a目录下 重命名:mv a b(看后面的是否存在,不存在则是改名) ./表示当前目录 -r 的作用是递归 拷贝: cp -r word/ hello (拷贝word目录到hello目录下) 删除文件: rm b.txt 删除b.txt文件 删除目录: rm -r 目录 暴力删除: rm -rf (f可表示false)查找操作: find / -name 文件名 模糊查询: find ./ -name "*.txt" 可查找文件类型: find ./ -type f (查找所有文件) find ./ -type d (查找所有目录) 查找文件内的内容: grep hello b.txt (查找b.txt 中hello的内容)权限管理: chmod 权限 文件/目录 指定文件的权限信息,r读4 w写2 x执行1 属主(创建的用户),属组(属于那个用户组),其他组 给a.txt文件属主增加x(执行权限) chmod u+x a.txt 给a.txt文件属组增加x(执行权限) chmod g+x a.txt 给a.txt文件属组增加x(执行权限) chmod o+x a.txt chmod 664 a.txt进程命令:ps 查看当前终端窗口里的进程ps -aux: 查看系统中的所有进程(ps -aux | more)ps -ef :查看当前进程列表(ppid父进程)kill 进程号: 杀死指定的进程kill -9 进程号:强制删除指定的进程号其他命令:ifconfig : 查看当前系统的IP地址等信息tar zcvf 压缩文件名.tar.gz 路径1 路径2... :实现一组文件或文件夹的打包tar zxvf 压缩文件名.tar.gz :实现解压缩解包man [章节号] 命令/函数名 :查询指定的命令或函数(帮助查询)
vi 工具的使用
vi和vim是Linux系统命令下的文本编辑器
命令模式的编辑命令:i:在当前位置之前插入a:在当前位置之后插入o:在当前行下插入shell<br />命令行模式的删除命令:x :删除一个字符dw :删除当前词3dw :删除3个词dd :删除当前行5dd :删除5行命令行模式的修改模式:r :替换一个字符cw :替换一个单词cc :替换一行C :替换从光标至行尾命令行模式的拷贝命令:yw: 拷贝词yy: 拷贝行dw:剪切词dd:剪切行p:当前行下粘贴u 撤销ctrl+r 取消撤销<br />
底行模式命令::w 存盘:w newfile 存成新文件:wq 存盘退出vi(或zz,或x):q! 强行退出不存盘:1,2co3 拷贝行1,行2,拷贝到行3之后:4,5mo6 移动行4,行5在行6之后:%s /源字符串/目标字符串 (实现字符串替换所有每行第一个的替换):%s /源字符串/目标字符串/g 替换每一行中的所有使用vimtutor命令用来练习vi命令用户目录下.vimrc文件可以实现vi的简单设置 (vi ~/.vimrc)