本文首发于:行者AI
Linux 在设计之初,就是基于 Intel x86 系列CPU架构计算机的,它是一个基于POSIX的多用户、多任务并且反对多线程和多 CPU 的操作系统,它是由世界各地成千上万的程序员设计和开发实现的,当初开发Linux零碎的目标就是建设不受任何商业化软件版权制约的、全世界都能自在应用的类 Unix 操作系统兼容产品。
1. Linux 的那些往事
Linux 内核最后是由李纳斯•托瓦兹(Linus Torvalds)在赫尔辛基大学读书时出于个人爱好而编写的,过后他感觉教学用的迷你版 UNIX 操作系统 Minix 太难用了,于是决定本人开发一个操作系统。第 1 版本于 1991 年 9 月公布,过后仅有 10000 行代码。
李纳斯•托瓦兹没有保留 Linux 源代码的版权,公开了代码,并邀请别人一起欠缺 Linux。与 Windows 及其他有专利权的操作系统不同,Linux 凋谢源代码,任何人都能够收费应用它。
据估计,当初只有 2% 的 Linux 外围代码是由李纳斯•托瓦兹本人编写的,尽管他依然领有 Linux 内核(操作系统的外围局部),并且保留了抉择新代码和须要合并的新办法的最终裁定权。当初大家所应用的 Linux,我更偏向于说是由李纳斯•托瓦兹和起初陆续退出的泛滥 Linux 好者共同开发实现的。
李纳斯•托瓦兹无疑是这个世界上最平凡的程序员之一,何况,他还搞出了全世界最大的程序员交友社区 GitHub (开源代码库及版本控制系统)。
对于 Linux Logo 的由来是一个很有意思的话题,它是一只企鹅。
为什么抉择企鹅,而不是抉择狮子、老虎或者小白兔?有人说因为李纳斯•托瓦兹是芬兰人,所以抉择企鹅,有人说因为其余动物图案都被用光了,李纳斯•托瓦兹只好抉择企鹅。
我更违心置信以下说法,企鹅是南极洲的标志性动物,依据国际公约,南极洲为全人类独特所有,不属于世界上的任何国家,任何国家都无权将南极洲纳入其幅员。Linux 抉择企鹅图案作为 Logo,其含意是:凋谢源代码的 Linux 为全人类独特所有,任何公司无权将其公有。
2. 罕用的Linux命令
上面将会向大家分享一些会常常用到的Shell命令
(1)cd -更改文件目录命令
# 切换到主目录cd# 切换到主目录cd ~# 切换到目录/tmpcd /tmp# 切换到当前目录的dir目录cd dir# 切换到根目录cd /# 切换到上一级目录cd ..# 切换到二级目录cd ../..# 切换到主目录,例如是root用户,则切换到/root下 cd ~
(2) ls -展现当前目录下文件命令
# 显示当前目录文件ls# 给出当前目录下所有文件的一个长列表,包含以句点结尾的“暗藏”文件ls -la# 列出当前目录下以字母a结尾的所有文件ls a*# 给出当前目录下以.doc结尾的所有文件ls -l *.doc
(3)pwd -查看以后所在门路
# 查看本人以后所在门路pwd
(4)cp -文件复制命令
应用 cp 命令须要指定文件夹或进入须要操作的文件夹下进行操作
# 把文件a复制为新文件a.apkcp a a.apk# 把文件afile从当前目录复制到/home/bible/目录下cp afile /home/bible/# 把当前目录下的所有未暗藏文件复制到/tmp/目录下cp * /tmp # 递归性地把当前目录下的docs目录复制为新目录docs.bak,放弃文件属性,并复制所有的文件,包含以句点结尾的暗藏文件。为了不便起见,-a选项蕴含-R选项cp -a docs docs.bak# 若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件cp -r
(5)find -查找文件命令
# 在当前目录中查找rpm包find .-name *.rpm# 在当前目录及其子目录中查找文件名蕴含page的文件find .|grep page# 在零碎的任何中央查找文件名蕴含traceroute的文件locate traceroute
(6)grep -搜寻文件内容命令
# 在文件exports中查找蕴含bible的所有行grep bible /etc/exports# 在WEB服务器日志文件access.log的后100行中查找蕴含“404”的行tail -100 /var/log/apache/access.log|grep 404# 在WEB服务器日志文件access.log的后100行中,查找没有被google拜访的行tail -100 /var/log/apache/access.log|grep -v googlebot# 在主apache配置文件中,查找所有非正文行grep -v ^# /etc/apache2/httpd.conf
(7)mkdir -新建目录命令
# 在当前目录中建设名为photos的目录mkdir photos# 在当前目录下建设指定的嵌套子目录mkdir -p this/that/theother
(8)touch -创立一个空的文件
# 创立一个空文件,文件名为aaa.txttouch aaa.txt
(9)rm -删除文件命令
# 删除文件arm a# 删除当前目录下的所有文件(未暗藏文件)。rm命令不删除目录,除非也指定了-r(递归)参数。rm *# 删除domed目录以及它所蕴含的所有内容rm -rf domed# 删除当前目录下所有以字母a结尾的文件,并且在每次删除时,提醒用户进行确认rm -i a*
(10)vi -编辑文件
# 用vi编辑文件/etc/bubby.txt vi /etc/bubby.txt# 用vim编辑文件/etc/bubby.txt vim /etc/bubby.txt# 快捷操作: 切换窗口:alt+1,alt+2 全屏: alt+回车 # 将vim挂起(暂停):ctrl+z,暂停后可进行其余shell操作,完了之后可通过 fg 命令切换回vim界面持续编辑 :MR 查看历史文件记录(留神:MR大写) :sp 横向切换界面窗口 :vsp 纵向切换界面窗口 不便多文件对照编码 emacs /etc/bubby.txt 用emacs编辑文件/etc/bubby.txt
(11)date- 零碎日期设定
# 设置零碎期间为2006年5月20日6点整。date -s “060520 06:00:00″
(12)reboot,shutdown -敞开和重启计算机
# 重新启动计算机reboot# 重新启动计算机,进行服务后重新启动计算机shutdown -r now# 敞开计算机,进行服务后再关闭系统shutdown -h now# 敞开计算机halt# 个别用shutdown -r now,在重启零碎时,敞开相干服务,shutdown -h now也是如此。
(13)df - 显示磁盘空间应用状况
# 显示指定文件所在分区的磁盘应用状况df /etc/dhcp# 显示文件类型为ext4的磁盘应用状况df -t ext4
(14)gzip -压缩和解压文件
# 把当前目录下的每个文件压缩成.gz文件gzip *# 把上例中每个压缩的文件解压,并列出具体的信息gzip -dv *# 递归地解压目录gzip -dr rancher.gz
(15)zip -压缩文件
# 将/home/html/这个目录下所有文件和文件夹打包为当前目录下的html.zipzip -q -r html.zip /home/html# 压缩文件cp.zip中删除文件a.czip -dv cp.zip a.c# 把/home目录上面的mydata目录压缩为mydata.zipzip -r mydata.zip mydata# 把/home目录上面的abc文件夹和123.txt压缩成为abc123.zipzip -r abc123.zip abc 123.txt# 将logs目录打包成log.zipzip -r log.zip ./logs
3. 结语
在过来的几十年里,Linux零碎次要被利用于服务器端、嵌入式开发和PC桌面3大畛域,其中服务器端畛域是重中之重。例如,咱们熟知的大型、超大型互联网企业(百度、腾讯、Sina、阿里等)都在应用Linux零碎作为其服务器端的程序运行平台,寰球及国内排名前1000的 90%以上的网站应用的支流零碎都是Linux零碎。而咱们在测试工作中也或多或少的会接触到一些Linux命令,纯熟的应用Linux命令能够让咱们在应用windows零碎的dos命令时更加纯熟。