web开发中必须掌握的linux概念和常用命令,我也做了一些笔记。再次翻开笔记,发现很多命令都是原样,有些忘记了,不过从头看笔记很快就记住了,在平时的学习过程中,做笔记确实是很有必要的。所以我想把我整理的这些笔记整理出来分享给大家。那么我们从哪里开始呢?既然说的是linux笔记,那我先说一句,在linux中,一切皆文件。1、环境变量环境变量(environmentvariables)一般是指操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹的位置和系统文件夹的位置。环境变量是操作系统中具有特定名称的对象,其中包含一个或多个应用程序将使用的信息。查看环境变量的配置格式,比如查看$PS1的配置(操作系统和当前用户的信息)echo$PS1临时设置可以直接赋值给$PS1$PS1='[\u@\h\w]$'如果需要永久生效,需要修改/etc/profile文件中的配置exportPS1="[\u@\h\t]$"然后执行source命令(通常用于重新执行新修改的初始化文件,使其立即生效,无需注销重新登录)source/etc/profilePATH环境变量命令存放的路径是系统创建的,供用户使用。随时随地使用echo$PATH//在执行ls等命令时查看PATH环境变量会在PATH中搜索,没有提示commandnotfound。命令软件可以安装在以下目录/bin/sbin/usr/bin/usr/sbin/usr/local/bin/usr/local/sbin2。硬链接与软链接2.1硬链接(HardLink)在同一个分区中,具有相同inode号的文件相互之间是硬链接。硬链接也是文件的入口。一般都是系统默认创建的,防止误删。创建硬链接只能用于文件。创建硬链接,不能为目录创建硬链接创建硬链接:lnsourcefileentry创建硬链接入口例如:为/test/a.txt创建硬链接2.2源文件存放的位置在符号链接中(inode节点号与源文件不同),相当于Windows创建软链接的快捷方式:ln-s源文件入口创建软链接入口例如:为/创建软链接test/a.txt2.3硬链接与软链接区别在于硬链接的inode号与源文件的inode号相同。软链接的节点号和源文件的inode不一样。硬链接必须在同一个分区中。软链接可以跨文件系统,不能为目录创建硬链接。软链接可以(经常用到)2.4当硬链接数为0(rm-fhardlink),进程调用数为0时,彻底删除一个文件软件或服务就够了3.快捷键和编辑,vim中编辑文件时的保存、退出操作3.1vim中的快捷键G:文件最后一行(非编辑INSERT状态)gg:文件第一行(非编辑INSERT状态)Next)o:在当前行下方插入一个空行,进入编辑模式u:撤销(非编辑INSERT状态)C:删除光标位置到行尾的内容,进入编辑模式A:快速到达当前行尾,进入今天编辑模式3.2编辑、保存、退出操作1.按键盘i进入编辑模式,配置文件2.按esc退出编辑模式3.输入:wq保存退出4.如果文件没有变化,退出:q4.如果文件已经改变,不想保存修改后的文件,输入:q!注意:vim编辑文件,输入法必须是英文模式4./etc目录下的配置文件目录功能/etc/profile一般使系统全局环境变量永久化或别名配置文件/etc/selinux/configselinuxfirewall配置文件/etc/init.d/iptablesiptables防火墙配置文件/etc/sysconfig/i18n字符集配置文件/etc/sysconfig/network-scripts/ifcfg-eth0网卡配置文件/etc/sysconfig/network可配置主机名/etc/hosts解析主机名与ip地址的对应关系/etc/bashrc别名配置文件5.网卡(网络适配器)配置文件网卡配置文件所在位置为/etc/sysconfig/network-scripts/ifcfg-eth0,默认配置项包括:1.DEVICE:网卡名称2.TYPE:网络类型3.UUID:分配给系统中每个设备的标识号,在系统中唯一4.HWADDR:HardWareAddress网卡的硬件地址/mac地址/物理地址,全球唯一,网卡生产时就已经确定了5.ONBOOT:开机或重启网络时是否自动启动6.NM_CONTROLLED:是否网卡的配置文件由系统网络服务软件控制,如果系统或网络重连,网卡然后重启7.BOOTPROTO:网卡获取ip的方法1.static/none:固定ip,需要手动设置2.dhcp:系统默认自动获取8.IPADDR:网卡的ip地址9.NETMASK:子网掩码,决定一个局域网最多可以有多少台机器(255.255.255.0为相当于PREFIX=24)10.GATEWAY:网关?不太明白</span>6.别名alias6.1查看linux中默认的别名设置,执行alias命令。别名输出如下:6.2Aliassetting6.2.1Temporarilytakeeffect临时设置命令的别名,命令行直接alias+command="selfdefinethecommand"即可,如aliasrm="echoxxx"在命令行中执行:rm/a.txt//输出xxxa.txt注意:1.再次登录服务器后,别名设置失败2.设置别名后最后,如果原命令的功能不一样了,但是你还是想用,可以在执行命令前加上''\rma.txt//这时候rm原来的功能就生效了6.2.2要使别名永久重启服务器或者重新登录服务器即可生效,需要在/etc/profile中配置aliasrm="echoxxx",然后执行命令:source/etc/profile这样rm的别名设置才会生效永久6.3取消别名设置unaliasrm7。linux7.1下安装软件的方法yum是Fedora、RedHat和CentOS中的一个shell前端包管理器。linux环境下可以使用yum命令,前提是需要网络特性:自动解析需要安装的软件依赖需要网络yuminstalltr??ee-y7.2rpmlinux环境下可以使用yum命令,不需要网络,但需要挂载在光盘上,提供软件包的库。1.将设备挂载到服务器挂载目录/dev/chrom/mnt2。查看设备是否挂载成功df-h3.执行rpm命令安装所需的软件包,如:rpm-ivh/mnt/Packages/lrzsz-0.12.20-27.1.el6.x86_64.rpm4。检查是否安装成功lrzsz软件包rmp-qalrzsz5.可以查看已安装的软件包内容(可执行命令):rpm-qllrzsz6.rpm删除已安装的软件包:rpm-elrzsz7.3默认编译安装到/usr/local目录,需要自己安装自己做依赖8.tar打包压缩8.1创建压缩包(1)。将/etc目录打包到/tmp/etc.tar.gztarzcvf/tmp/etc.tar.gz/etc//z通过gzipg工具压缩//ccreate创建压缩包文件//vverbose显示压缩过程//f指定文件(2)。将/etc目录打包到/tmp/etc.tar.gz并排除/etc/servicestarzcvf/tmp/etc.tar.gz/etc--exclude=/etc/services8.2查看压缩包内容tartf/tmp/etc.tar.gz8.3decompress压缩包8.3.1解压到当前路径tarxf/tmp/etc.tar.gz//默认解压到当前路径8.3.2解压到指定目录tarxf/tmp/etc.tar.gz-C/ttt//-C解压到指定目录9.nospaceleftondevice磁盘空间不足9.1.df-h9.2查看磁盘各分区占用情况。进入使用率最高的分区查看分区下各文件的块大小du-sh.*|sort-h//逐层检查,确认后删除显示9.4。文件没有被完全删除(硬链接数为0,但文件被系统进程调用)。常用命令1.manformat并显示在线手册页在手册中,你想查看哪个命令,如使用方法,比如查看ls命令的使用方法:manls2。ipshow/manipulaterouting,devices,policyroutingandtunnels显示网卡ip地址信息知识点:1.ipa//ip地址缩写3.whichshowedthefullpathof(shell)commands显示命令的完整路径查看madir命令的完整路径whichmkdir4.pwdprintnameofcurrent/workingdirectory显示当前工作目录5.lslistdirectorycontents列出目录所有内容5.1列出/root目录下的所有目录和文件cd/rootls5.2列出/root目录下的所有目录和文件,并显示文件的相关信息```cd/rootls-l//等同于ll,-l:使用长列表格式,显示文件的详细信息```6.mkdir-makedirectories创建目录6.1。创建/data文件夹mkdir/data6.2.一条命令创建目录/my/test,同时创建/my目录和/my/test目录存在,新建不会报错如果需要创建多级文件夹,会创建到最底层的父文件夹7。touchchangefiletimestamps创建文件,修改文件timestamp在datatouch/data/test.txt8下创建文件test.txt。cdcd-changedirecory切换目录8.1进入/data/test目录cd/data/test8.2回到上一层目录cd..9.cp-copyfilesanddirectories复制文件或目录9.1复制/data/test.txt文件到/tmpcp/data/test.txt/tmp9.2复制/data目录到/tmp目录下cp-r/data/tmp知道知识点:1、-r参数表示递归复制目录,逐层复制2、复制时-p,保持文件属性不变2、-a相当于-pdr9.3将/data目录复制到/tmp目录,保持文件属性不变cp-p/data/tmp10.mv-move(rename)files移动或重命名文件10.1移动/data目录到/rootmv/data/root10.2移动/data/a.txt重命名为b.txtcd/datamva/txtb.txt11。rm-removefilesordirectories删除文件或目录11.1进入/root目录下的data目录,删除test.txt文件cd/root/datarm-ftest.txt//-f"force",表示强制删除11.2删除目录,删除/data/test目录rm-r/data/test//-r删除目录12.echo-displayalineoftextdisplaytextline12.1is/data添加/test.txt的内容到“我是studyinglinux."echo"我正在学习linux">/data/test.txt知识点:">",重定向,先清空文件内容,然后追加到文件末尾">>",添加重定向到将内容附加到文件末尾13.catconcatenatefilesandprintonthestandardoutput连接文件并打印出文件内容13.1显示/test.txtcat/test.txt13.2的文件内容配合<<,append文件/a.txtcat>>/a.txt<G>M>K18.psprocessstatus进程状态18.1查看所有节点进程ps-ef|grepnode19。find在目录层次结构中查找目录层次结构中的文件,查找文件19.1在/data目录中查找a.txt文件find/data-typef-name"a.txt"知识点:-type类型搜索内容的f表示搜索内容是文件类型19.2findand管道符“|”一起使用,在/data目录下找到a.txt文件并删除。查找/数据类型f名称“a.txt”|xargsrm-rf20。grep-printlinesmatchingapattern根据匹配规则过滤文本内容20.1输出test.txt文件,包含aaa字符串的行grep"aaa"test.txt20.2输出test.txt文件,不包含aaa字符串的行grep-v"aaa"test.txt//-v参数:--invert-match过滤掉不匹配的行20.3和管道符号一起使用,比如过滤掉命令历史中的所有cd命令history|grepcd21.awk21.1已知文件/数据目录test.txt文件内容为:aaabbbcccddd输出test.txt文件内容时,不包含bbb字符串:awk'!/bbb/'/data/test.txt21.2输出/data/text.txt的第二行awk'NR==20'/data/text.txt21.3输出/data/text.txt的第二到第三行awk'NR==2、NR==3'/data/text.txt22.sed用于过滤和流编辑器用于转换文本22.1/data/test.txt中的内容为aaa,将/data/a.txt中的内容替换为bbbsed-i's#aaa#bbb#g'/data/test.txt知识点:-i--in-place替换固定用法,'s#要替换的内容#替换后的内容#g'。'#'也可以用'@'ETC。符号,常用'#'22.2使用sed命令输出行,比如输出/data目录下test.txt的第20行,第20到30行sed-n'20p'/data/test.txtsed-n'20,30p'/data/test.txt23。pingsendICMPECHO_REQUEST包到网络主机检查网络是否连通根据本周记录的笔记整理了几个web前端开发中linux相关概念和常用命令,用法也比较基础,主要是为了方便参考和复习,同时分享给大家。当然,要获得更完整的信息,请参阅手册。如有疑问请指出,谢谢。最后,让我们一起ping百度,ping!!平!平!pingwww.baidu.com