本文主要是介绍软件测试面试之Linux(价值2万的线下培训资料),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Linux
- 简介
- linux操作系统
linux是一个开源、免费的操作系统,其稳定性、安全性、处理多并发已经得到业界的认可,目前很多中型,大型甚至是巨型项目都在使用linux。 linux内核:red hat 、红旗linux、ubuntu、unix,aix,solaris,centOS,它们的内核都是一样的 |
- linux的特点
- (中国人最喜欢的一点)免费的/开源 - 支持多线程/多用户(多并发) - 安全性好(开源的 一旦有个漏洞 就有网络界雷锋给修补了) - 对内存和文件管理优越 - Linux最小只有4m->嵌入式开发(手机用户多 多么庞大的市场) |
- linux的缺点
操作相当困难 |
- linux的文件系统
linux的文件系统是采用层级式的 树状目录 结构(windows是c\d\e\f盘),在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录 深刻理解linux文件目录是非常重要的(画图给大家说明下) - / - root,存放root用户的相关文件 - home,存放普通用户的相关文件(待会儿我新建用户,它就会在home目录给你创建个目录) - bin,存放常用命令的目录,cd /(目录切换到根目录,大家可以用个命令来看下 pwd,cd bin,ls –l ,可以看到vi ,su命令,vi删掉 那么vi命令就用不了了)如vi,su - sbin,要具有一定权限才可以使用命令 - mnt,默认挂载光驱和软驱的目录 - etc,存放配e置的相关文件(数据库,环境变量的配置) - var,存放经常变化的文件,如网络连接的sock文件 - boot,存放引导系统启动的相关文件(文件被破坏了,Linux就起不来了 和windows类似) - usr,安装一个软件的默认目录,相当于windows下的program file |
- Linux简介
Linux是一个Unix类操作系统,完全开发源码,多用户多任务,服务器(数据库服务器、Web服务器、应用服务器、日志服务器、图片服务器等等)、嵌入式领域(如路由器等需要Linux才能启动)、移动终端(比如安卓手机等、平板),Linux主流版本有:RedHat、CentOS、Ubuntu、SUSE、FreeBSD |
- linux 7大运行级别
0 系统停止 1 单用户 2 多用户 不支持NFS 3多用户,命令行模式登陆(我们常用的运行级别) 4 未用 5 图形化界面 6 重新启动 |
- linux操作注意事项:
1、 Linux的命令是严格区分大小写的; 2、 Linux支持三种格式的shell脚本,分别是 ksh、csh、sh 3、 登陆系统后,显示:[root@localhost ~]#(表示当前是以root用户登陆) 或显示 [u101@localhost bin]$ (表示当前是以普通用户--u101登陆) 4、 linux的默认超级用户/系统管理员是root用户 5、 ~表示当前登录的用户所在的目录,如果是root用户登陆,就在/root目录下;如果是普通用户,就在home目录下 |
二、网络配置
ifconfig #查ip信息 Ping #测试网络是否连通 Setup #配置ip、防火墙、服务等信息 service network restart(start\stop) #重启网络服务(开启网络服务\停止网路服务) 虚拟网卡桥接连接方式(桥接/NAT模式) ./startup.sh ./shutdown.sh |
三、常用系统操作命令
- pwd
pwd 查看当前路径 |
- ls/ll ll -la
查看目录的内容,添加参数a,可显示隐藏文件,比如:ls -la [root@localhost dd]# ll -la 总计20 drwxr-xr-x 2 root root 4096 09-24 16:08 . drwxr-x--- 28 root root 4096 09-24 10:17 .. -rwxr-xr-x 2 root root 0 09-24 16:08 4.txt 第一段:文件类型和权限,以 - 开头的,表示文件;以d开头的,表示目录(权限部分跳过,后面有详细讲解) 第二段:对于文件夹是代表子目录数 第三、四段:文件的属主,文件的属组 (不理解,先跳过,后面有详细讲解) 第五段:文件或文件夹本身大小 第六、七段:文件的最后修改时间 第八段:文件名称 |
- 路径
绝对路径:以“/”开头 相对路径:. 表示当前目录; .. 表示当前目录的上一层 |
- cd
切换路径 #cd /etc/sysconfig |
- clear
清屏命令 #clear |
- tab键
tab键 用来路径补全功能 |
- uname -r
查linux内核版本号 #uname -r |
- netstat -an
查找linux或者windows下所有的端口 #netstat -an |
- ctrl+c
终止命令 crtl + c |
四、文件管理命令
- mkdir 文件夹名
创建文件夹,可以同时创建多个文件夹,如:mkdir d01 d02 |
- mkdir -p ./first/second
创建多层文件夹:mkdir -p ./first/second(first和second都不存在情况下建目录) |
- touch 文件名
#touch test.txt 创建文件,另外,touch命令还可以更新文件的修改时间 |
- rm -rf 文件名或文件夹名
#删除文件,非空文件夹 |
- cp
cp 源文件路径/原文件名 目标路径 复制文件到指定路径下 例: cp T01/test.txt T02/ |
- cp -R
cp -R 源文件路径/原文件名 目标路径 #拷贝文件夹到指定路径下(把文件夹以及文件夹下的所有内容一起拷贝) 例: cp -R T01 T02 |
- mv 文件名或文件夹名
mv 文件名或文件夹名 #移动/剪切文件 1)mv 源文件路径/源文件名 目标路径 #将源文件剪切到目标路径下 例:mv t01/a.txt t02/ #将t01文件夹里面的a.txt文件剪切到t02目录下 2)mv 源文件路径/源文件名 目标路径 #文件重命 例:mv t02/a.txt t02/aa.txt #将t02文件夹里面的a.txt文件重命名为aa.txts 例:mv t01/b.txt t03/cc.txt #将t01文件夹里面的b.txt文件剪切到t03目录下,并重命名为cc.txt |
- 查看文件命令:(install.log)
1)、-- 查看小文件: cat 文件名 cat -n 文件名 2)、--查看大文件(在工作中,我们查看日志文件的时候使用) more 文件名 -- 回车->往下翻行 空格->翻页 ctrl + c-->强制退出 less 文件名 -- 回车/向下键->往下翻行 空格->翻页 输入字母:q -->强制退出 3)、--查看头几行 或 查看后几行 n表示你要看的行数 查看头n行:head -n 文件名 -- n表示你要看的行数 查看后n行:tail -n 文件名 -- n表示你要看的行数 |
- > 导入(复制) -重定向
cat A > B 把A的内容导入到B(把原来的内容覆盖) |
- >> 追加导入
cat A >> B 把A的内容追加到B文件后面 cat A B >> C 把A和B的内容分别导入到C文件 |
- 查找文件中指定的内容,用 "管道: |" 和 grep 命令
管道的作用:将前面一条命令的输出,当作后面命令的参数(输入) grep 查找指定字符 如:查找系统中80端口的信息: netstat -an | grep 80 练习:查找 ifcfg-eth0 中包含“OOT”字符串的信息 查找指定字符串的另一种方式 grep zpp /etc/passwd #到/etc/passwd文件中查找zpp字符串 #或者命令:cat /etc/passwd | grep zpp |
- 查找文件
语法: find 路径 参数 参数值 例: find /root -name a.log #在root目录下,按文件名称查找名字为a.log的文件 find /root -name '*lo*' #在root目录下,按文件名称查找名字包含 'lo' 字符的文件 |
- wc -l 文件名
统计当前文件的行数 wc -l ./T01/tt.txt |
五、打包压缩管理
1.打包压缩的文件后缀有这些:压缩文件(.gz)、压缩包(.tar.gz 或 .tgz) 2.对文件进行压缩命令:gzip 3.对压缩包进行解压命令:gzip -d 4.对文件进行打包并压缩:tar |
- gzip 文件名称
语法:gzip 文件名称 gzip只能压缩单个文件,不能压缩目录 例: gzip f101.txt #将f101压缩,形成压缩文件f101.gz |
- gzip -d 压缩包名
语法:gzip -d 压缩包名 例: gzip -d f101.gz 或 gunzip f101.gz #解压f101.gz文件 |
- tar 参数 目标文件路径和包名 被打包的文件/文件夹名称
打包到当前文件夹: tar -czvf t101.tar.gz T101 #将文件夹打包并压缩到当前目录下的t101.tar.gz压缩包中 打包到指定文件夹: tar -czvf /opt/t101.tar.gz T101 #将文件夹打包并压缩到/opt/t101.tgz压缩包中 |
- 解压缩
解压到当前文件夹: tar -xzvf t101.tar.gz #将t101.tar.gz压缩包中的内容释放到当前目录中(注:只能解压当前文件夹下的压缩包) 解压到指定文件夹: tar -xzvf t101.tar.gz -C /opt/d102/ #将t101.tar.gz压缩包中的内容解压到/opt/d102/目录中 |
- 将文件上传的linux服务器
(1)、使用第三方工具上传,如:filezilla,SecureFx (2)、命令:rz |
- 把文件下载到本地:
(1)、sz 文件名 文件被下载到目录 选项--会话选项--X/Y/Zmodem--下载(O)所指定的文件夹 |
- 针对windows平台下的zip压缩包的解压
unzip -d 目标路径 待解压文件 unzip -d d101/ f101.zip #将f101.zip解压到d101目录下 |
六、远程操作
- 在linux系统间远程访问
在linux系统间远程访问(从一台服务器远程访问另一台服务器) 语法:ssh 被访问的机器的用户名@被访问的机器的IP ssh root@172.11.1.67 退出:logout |
- scp #远程复制文件(夹)
语法:scp -r 被访问的机器的用户名@被访问的机器的IP:/被复制的文件的路径 目标路径 scp -r root@172.11.1.112:/root/install.log /root/ |
七、用户&权限
- 创建用户并设定密码
添加用户: useradd 用户名 用户设定密码: passwd 用户名 useradd u101 #用户登录后,默认进入到其home目录,home目录在/home/目录下(root用户的home目录是/root) passwd u101 #passwd默认给当前用户设置密码,密码=字母+数字+下划线(_),超过8位,设置密码时,不会显示出来 |
- 切换用户
su - u101 #切换用户 |
八、权限设定
Linux中通过控制每一类(有3类用户)用户对文件/文件夹的读、写、执行来实现权限控制 对一个文件而言,用户分为以下三类: u:所属用户 g:所属用户所在组的用户 o:组以外的用户 |
- 权限:
[root@localhost ~]# ll 总计 68 -rw------- 1 root root 1413 06-12 18:38 anaconda-ks.cfg drwxr-xr-x 2 root root 4096 06-12 20:55 Desktop -rw-r--r-- 1 root root 35768 06-14 15:34 install.log 第一段:文件类型和权限,以 - 开头的,表示文件;以d开头的,表示目录,权限有rwx,分别是可读可写可执行 第三、四段:文件的属主,文件的属组(属于哪个组的) rwxr-xr-x: 前三个字符表示拥有者的权限,中间三个字符是组权限,后面三个字符其他人。 r: read 可读 w: write 可写 x:execute 可执行 r可以用数字 4 表示 w可以用数字 2 表示 x可以用数字 1 表示 |
- 修改用户权限
chmod 权限 文件名 chmod u-w,g+w,o=r Desktop #删掉属主的写权限,增加组员的写权限,其他用户只有读的权限 drwxrwxrwx 2 root root 4096 06-12 20:55 Desktop d:表示该文件为文件夹 第一个rwx,表示该文件所属的用户对其所拥有的操作权限 第二个rwx,表示与该文件所属用户在同组内的用户对其所拥有的操作权限 第三个rwx,表示不与该文件所属用户在同组内的用户对其所拥有的操作权限 #r=4;w=2;x=1,755 chmod -R 574 Desktop/ 等同于 chmod -R u-w,g+w,o=r Desktop/ (-R表示文件夹及其所有子内容都会发生更改) 最大是777(drwxrwxrwx),最小是000(d---------) chmod -R 777 Desktop/ 等同于 chmod a=rwx Desktop/ #a代表所有用户 |
九、扩展命令
- 查看时间
cal #查看日期 date #查看时间 date -s "2013-03-23 16:36" #修改系统时间 |
- 查看系统资源
df -h #查磁盘信息 free -m #查看可用内存 top # 动态查看系统资源 (默认是5秒刷新一次,相当于windows的资源管理器) who #查看有哪些用户登录了系统 ps -ef #查看系统正在运行的所有进程 ps -ef | grep tomcat #查看指定的进程。查询tomcat进行信息,如果有信息返回, 表示tomcat进程已启动,否则,被关闭。 kill -9 pid #强制终止(pid表示进程号) |
- 光驱
1、mount --- 挂载光驱 2、umount --- 卸载挂载的文件系统 3、rpm -ivh 安装文件名 ---- 安装软件 4、rpm -e 需要卸载的安装包 ---- 卸载软件 5、tail -f 文件名 ---- 动态查看文件信息 |
十、vi编辑器
- 三种模式
三种模式: (1)命令模式:esc(定位,复制,粘贴,删除) (2)编辑模式:i/a(文本输入) (3)末行模式::wq(读写退出,替换,显示行号和行结束符) 三种的切换: 命令模式切换到编辑模式:输入i/a。 编辑模式退到命令模式:Esc |
- 末行模式
末行模式是以冒号:开头。注意:末行模式必须是在命令模式下操作。命令: (1):wq 保存加退出 (2):n n行数 跳转到指定行 (3):q! 强制退出 (4):n1,n2s/需要替换的字符串/替换字符串/g 参数解释: n1 表示从第n1行开始,表示一个具体的数字,比如:1 n2 表示从第n2行结束,表示一个具体的数字,如果想表示最后一行,可以用$表示,比如:20 g 表示强制替换所有参数。 列子: :1,5s/oracle/linux/g #替换第1行开始到第5行中的oracle为linux :3,$s/oracle/linux/g #替换第3行开始到最后一行中的oracle为linux (5):w 文件名 另存为 (6):set nu 显示行号 (7):set nonu 不显示行号 |
- 命令模式下的命令:
(1)dd 删除一行,光标所在行 (2)i 进入编辑模式,在光标前编辑 (3)x 删除一个字符。 (4)/搜索字符 字符串搜索,查找下一个,按n, 向下查找。如果向上查找,按N。 (5)yy 复制 (6)p 粘帖 /* **** 扩展命令 (7)G 到末行 (8)gg 到首行 (9)$ 到行尾 (10)^ 到行首 (11)ngg 跳转到n行 (12)a 进入编辑模式,在光标后编辑 (13)ndd 删除n行,从光标所在行向下删除n行 (14)u 撤销 (15)o 新增一行并进入到编辑模式,向下增加。如果是大写的O,就是向上增加。 (16)D 删除当前光标所在位置到行尾的内容 (17)nyy 复制n行,从光标所在的位置往下复制 |
这篇关于软件测试面试之Linux(价值2万的线下培训资料)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!