Linux重新学习

一、由来

  unix到minix到linux 1991正式发行

  1.内核版本:linux核心版本 linux内核官网www.kernel.org

  2.发行版本:比如redhat、centOS、suse、ubuntu

  3.开源软件:apache、nginx、mysql、php、samba、python、mongoDB、Ruby、sphinx

二、应用

  1.基于Linux的企业服务器 www.netcraft.com查看网站系统

  2.嵌入式系统

三、注意

  1.Linux严格区分大小写

  2.linux中一切内容皆文件,包括硬件

  3.Linux不区分扩展名,按权限区分

四、字符界面

  1.占用内存资源小

  2.减少出错、被攻击的可能性越小

五、Linux使用

  1.Linnux分区 主分区、扩展分区、逻辑分区,最多四个主分区

  2.硬件设备文件名,linux是树形目录

  3./dev硬件目录 ide硬盘/dev/hd[a-d]

         sata硬盘usb硬盘 /dev/sd[a-p]等

  4.启动分区 /boot启动分区,200MB  /根分区  swap交换分区,内存的两倍、4个G以下两倍,4个G以上和内存相同  /boot分区 建议单独做分区

六、命令 格式   命令 【选项】【参数】

  1.setup 设置公用的图形界面 主要设置系统设置 (红帽子专有)

  2.service network restart 重启网络设置

  3.df    df -h 查看硬盘挂载情况

  4.pwd 查看当前所在位置 print working directory

  5.ls 查看目录中内容       -a所有文件

             -l显示详细信息longlist

             -d查看目录属性 directory

             -h人性化显示文件大小 human

             -i显示inode    查看文件的id号

  6.文件类型  -rw-r--r--

       第一个字符文件类型:-文件    d目录  l软连接文件

       第一个三位:u用户  r读  w写  x执行

       第二个三位:g用户组

       第三个三位:o其他人

       最后一个点:ACL权限

  7.在linux中 以.开头的文件是隐藏文件  一般是系统文件

  8.建立目录 mkdir   -p递归创建  make directory

  9.cd切换目录  ~进入当前用户目录  -进入上次目录  ..进入上一级目录 .进入当前目录 change directory

  10.xshell下 ctrl+L 清屏

  11.相对路径 cd ../usr/local  绝对路径 cd /etc/

  12.rmdir 删除空白目录

  13.rm 删除文件或目录  -r删除目录 -f强制删除 false  

  14.rm -rf / 会删除linux根目录下所有文件

  15.cp 复制目录或文件 -r复制目录 -a=-pdr 复制文件属性   -p连带文件属性复制 -d复制链接属性

  16.ll查看目录中文件属性 相当于ls -l

  17.mv剪切改名命令  move  源文件 目标文件   也可以用于改名

  18.目录结构构  /bin和/usr/bin下是普通用户执行的命令存放位置

        /sbin和/usr/sbin 下是超级用户自行命令的存放位置

        /boot系统启动目录

        /dev 硬件保存位置

        /etc 系统配置文件目录

        /home普通用户家目录

        /root超级用户家目录

        /lib linux函数库

        /midia光盘 /mnt移动硬盘U盘 /misc外接的设备 系统准备的空目录用于挂载存储设备

        /sys和/proc是内存过载点,放在内存中的数据

        /tmp系统临时文件目录

        /usr系统软件资源目录 

        /var系统可变文档目录

    19.ln硬链接 链接命令 -s软链接 快捷链接 必须要写绝对路径

    20.搜索命令

      搜索文件 locate和find 第一个搜索快 第二个将所有数据搜索一遍

      locate基于索引数据库搜索 /var/bin/mlocate目录下  不是实时的 一天更新一次 用updatedb来强制更新  只能搜文件名  在/etc/updatedb.conf配置筛选条件

      whereis 在哪儿 只能用于查系统命令  -b只查看可执行文件 -m只查看帮助文档     whoami我是谁 whatis我是什么

      which 只能用于搜索系统命令  看到别名(只能搜索到外部命令,不能搜索到shell命令)

      find 【搜索范围】 【搜索条件】 -name根据文件名(精确查找)

        模糊查找 通配符 用双引号括起来  *任意内容 ?匹配任意字符 []匹配任意中括号内的字符

        -iname 不区分大小写

        -user 按照所有者搜索

        -nouser查找没有所有者的目录

        -mtime修改文件内容 +10十天前  -10十天内 10十天当天修改的文件

        -atime文件访问时间

        -ctime改变文件属性

        -size  .当前目录  25k文件大小等于25k   +25k文件大小大于25   -25k文件大小小于25k         千字节k  M  不加的话默认单位是数据块

        -inum 查找i节点搜索文件

        -a and逻辑与

        -o or逻辑或

        示例:find /etc -size +20k -a -size -50k -exec ls-lh {}

        -exec 命令 {} ;    搜索后执行

      grep [选项] 字符串 文件名   -v取反 -i取消大小写  可以用正则表达式查找

      man帮助命令  获取命令的帮助文档  -f有哪些等级的帮助

      apropos

    21.touch 新建文件

七、Linux帮助

  1.man帮助命令  获取命令的帮助文档  -f有哪些等级的帮助   只用于外部命令

  2.命令 --help   用于外部命令

  3.help 命令            用于内部命令

  4.info 有关命令的全部帮助文档

  用whereis命令来查看是否是内部命令(shell命令)  由是否有可执行文件来判断

八、Linux压缩命令

  1.zip格式

  压缩文件 zip 压缩文件名 源文件

  压缩目录 zip -r 压缩文件名 源文件

  解压缩 unzip 文件名 

  2.   .gz   gzip格式  只能压缩文件

  gzip 源文件  源文件消失

  gzip -c 源文件>压缩文件 源文件保留

  gzip -r 目录  将目录的子文件压缩

  解压缩 gzip -d   或者压缩文件夹 gunzip -r  或者压缩文件gunzip

  3.  .bz2  只能压缩文件

  bzip2 源文件  不保留源文件

  bzip2 -k 源文件   保留源文件

  解压缩  bzip2 -d 压缩文件  -k保留压缩文件

              bunzip2 压缩文件  -k保留压缩文件

  4.   .tar  格式

    先打包再压缩  tar -cvf 打包文件名  源文件

    解打包 tar -xvf 打包文件名

  5.  .tar.gz格式

    压缩 tar -zcvf 压缩包名.tar.gz 源文件

    解压缩 tar -zxvf 压缩包名

  6.   .tar.bz2格式

    压缩 tar -jcvf 压缩包名.tar.bz2  源文件

    解压缩 tar -jxvf 压缩包名.tar.bz2

    tar -jtvf 只查看压缩文件内容              -t  test

九、Linux关机重启

  1、shutdown  -h关机  -r重启  -c取消关机命令  时间  安全的关机命令

  2、halt关机

  3、poweroff关机

  4、init 0 关机

  5、reboot 重启

  6、init 6重启   init 5 调用图形界面  用runlevel查看级别  

  7、运行级别配置  /etc/inittab  

  8、退出登录  logout   exit   linux能保持255个连接

十、Linux挂载分区

     1、mount 查看已经挂载的硬盘和分区

  2、mount -a  将/etc/fstab下的配置文件下的所有挂载点都进行挂载  开机自动挂载 不要随便加特殊选项

  3、挂载命令格式  mount 【-t文件系统】 【-o特殊选项】 文件 挂载点

  4、解除挂载 umount

  5、U盘挂载   disk -l 查看U盘设备文件名   mount -t vfat 文件名  挂载点

十一、Linux查看用户

  1、 w  查看登录用户

  2、who 简单查看登录用户

  3、last 查看历史及现在登录用户信息和重启信息

  4、lastlog查看所有用户最后登录时间

七.Linux查看日志

  tail、cat、tac、head、echo

  动态日志 tail -f 文件名

  前3000行到前3999行 cat 文件名 | tail -n +3000 | head -n 1000

  

  

tail  -n  10  test.log   查询日志尾部最后10行的日志;

tail -n +10 test.log    查询10行之后的所有日志;

head -n 10  test.log   查询日志文件中的头10行日志;

head -n -10  test.log   查询日志文件除了最后10行的其他所有日志;

sed -n '5,10p' filename 这样你就可以只查看文件的第5行到第10行

cat -n test.log |grep "地形" |more 或者 less分页

sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p'  test.log

  sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p'  test.log

八、Linux查询进程并杀死

  ps -ef | grep java

  kill -9 [PID]

touch cat echo

inux查看日志文件内容命令tail、cat、tac、head、echo

tail -f test.log
你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C,

---------------------------
linux 如何显示一个文件的某几行(中间几行)

从第3000行开始,显示1000行。即显示3000~3999行
cat filename | tail -n +3000 | head -n 1000

显示1000行到3000行
cat filename| head -n 3000 | tail -n +1000

*注意两种方法的顺序
分解:
tail -n 1000:显示最后1000行
tail -n +1000:从1000行开始显示,显示1000行以后的
head -n 1000:显示前面1000行

用sed命令
sed -n '5,10p' filename 这样你就可以只查看文件的第5行到第10行。

例:cat mylog.log | tail -n 1000 #输出mylog.log 文件最后一千行

---------------------------
cat主要有三大功能:
1.一次显示整个文件。$ cat filename
2.从键盘创建一个文件。$ cat > filename
只能创建新文件,不能编辑已有文件.
3.将几个文件合并为一个文件: $cat file1 file2 > file
参数:
-n 或 --number 由 1 开始对所有输出的行数编号
-b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号
-s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
-v 或 --show-nonprinting
例:
把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里
cat -n textfile1 > textfile2

把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3 里。
cat -b textfile1 textfile2 >> textfile3

把test.txt文件扔进垃圾箱,赋空值test.txt
cat /dev/null > /etc/test.txt
注意:>意思是创建,>>是追加。千万不要弄混了。
------------------------------------------
tac (反向列示)
tac 是将 cat 反写过来,所以他的功能就跟 cat 相反, cat 是由第一行到最后一行连续显示在萤幕上,
而 tac 则是由最后一行到第一行反向在萤幕上显示出来!

------------------------------------------
在Linux中echo命令用来在标准输出上显示一段字符,比如:
echo "the echo command test!"

这个就会输出“the echo command test!”这一行文字!

echo "the echo command test!">a.sh
这个就会在a.sh文件中输出“the echo command test!”这一行文字!
该命令的一般格式为: echo [ -n ] 字符串其中选项n表示输出文字后不换行;字符串能加引号,也能不加引号。
用echo命令输出加引号的字符串时,将字符串原样输出;
用echo命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割。

        

原文地址:https://www.cnblogs.com/bigmonkeys/p/7896841.html