linux 一些主要目录的认识:
/bin 二进制可执行命令
/boot 存放系统引导文件,如 内核、grub 等
/dev 设备文件
/etc 系统配置目录
/home 普通用户家目录
/lib 系统库文件
/lib64 64位库
/proc 进程目录,了解系统的一个窗口,在此可以查看很多内核信息
/root root用户的家目录 /sbin 管理员使用命令的存放目录
/selinx selinux 工作目录
如果该目录为空表示禁用了 selinux
如果不为空,则表示启用了 selinux
/src 系统、用户源文件工作目录
有时用户在编译源代码时,会把代码放到该目录 /var 存放比较大的,经常变化的文件
比如系统经常把日志放在该目录
linux 命令:
命令分类:
linux 把命令分为内部命令和外部命令.
内部命令:
shell 自带的命令,常驻内存
外部命令:
不常驻内存,以文件的形式放在磁盘上 判断方法:
能执行,却找不到文件就是内部命令 或者 type cd
 
获取命令帮助的方法:
) man
格式:man 命令名
如: man fdisk --获得fdisk的帮助信息 ) help
格式: help 命令名
命令名 --help
如: help cd
useradd -help
) info 侧重介绍信息
如: info fdisk
info mount
使用命令前,了解命令特征:
1、命令、参数等区分大小写
2、程序能否执行与扩展名没有关系,与文件能否执行,是否有执行权限有关
3、命令名和路径可以使用 tab  来补齐
 
文件、目录管理命令
    ls   列文件目录清单
格式: ls [option] 查看目标
 
如:   ls /soft
      ls /boot
      ls /var
      ls        --如果省掉目标的话,查看当前目录
 
option:
    -l     长格式显示
    -a     显示全部(包括隐含文件)
   隐含文件方法:文件名以 . 开头
    -t     按修改时间排序
    -r     反向排序
    -S     按大小排序
    
      ls -l
-rw-------. 1 root root  1638 10月 29 23:24 anaconda-ks.cfg
-rw-r--r--. 1 root root 55504 10月 29 23:24 install.log
 
第一列的第一位:文件类型
    -    普通文件
    d    目录
    b 块设备文件
    c 字符设备文件
    l 软链接
    p 管道文件
 
第一列2-10 表权限
    linux 权限用三个字母表示  r(读)   w(写)   x(执行)
                  4      2      1
    9位分成三组:每三位一组,每组对应一类用户:属主(自己)、
    开放组、其它用户
 
第二列:硬链接数
 
第三列:属主
第四列:开放组
 
第五列:文件大小
 
第六列:修改日期
 
第七列:文件名

touch 新建空文件,如果文件存在不覆盖,但是会更新其修改时间

 
rm    删除文件或目录
格式: rm [option]  目标文件或目录
option:
    -r   删除目录
    -f   强制删除不提示
    rf  组合时要慎用
 
如果删除目录: rm -r  目录名
如:   rm /test/a      --删除/test/ 下的a
     rm  b           --删除当前目录下的 b
     mkdir      创建目录
mkdir [option]  目录名
 
option:
    -p    如果目录的上层目录不存,自动创建
    -v    显示过程
例:在/下创建 test  
  mkdir /test
    
例:在 /  下创建  u01
    mkdir /u01
 
例:在 /soft 下创建 myshare
    mkdir /soft/myshare      --做的时候要确保 /soft要存在
 
例:在 /u01 建 app
    mkdir -pv /u01/app
 
cp  复制文件
格式: cp 源文件  目标文件
option:
    -r    复制目录
    -f    强制覆盖,不提示
    -i    覆盖时提示
    
 
例: cp /etc/yp.conf  /test/
把/etc/yp.conf 复制到 /test 下
scp  网络复制
格式: scp  源文件   目标文件
如果文件不在本机的表示方法:
    ip:路径
 
    如:172.16.1.116:/etc/fstab
        表示 172.16.1.116 的 /etc/fstab 这个文件
 
本机文件表示无须ip
        如:/etc/fstab
 
例:把 172.16.1.132 的文件 /etc/fstab 复制到本机的 /test 下
scp 172.16.1.132:/etc/fstab  /test/
 
例:把本机的 /etc/yp.conf 复制到 172.16.1.123 下的 /root
scp /etc/yp.conf 172.16.1.123:/root/
 
 
mv  移动或改名
格式:mv 源文件 目标文件
 
例: mv a b    --将当前目录下的文件a 改名为b
例: mv a /tmp/b   --将当前目录下的a 移动到/tmp 下,并改名为 b
 
    究竟是改名还是移动,主要看前后位置,前后位置没变就是改名
 
    移动和改名可以同步进行
 
练习: 在 / 建两个目录  test    abc
              把 /etc 下所有 .conf 文件拷到 abc 下,再看abc
              下以a 开头的文件移到 test 下
 
      mkdir /test
      mkdir /abc
      cp /etc/*.conf /abc/
      cd /abc
      ls
      mv a*  /test/
      ls /test   也可以  cd /test;ls
 
    cd   切换目录
 格式:cd  目标目录
        
      cd ..      --回到上一级
      cd         --回到家目录,查看用户家目录 echo $HOME
      cd ~       --回到家目录
      cd ~tom    --到tom的家目录
   
 例: cd /test    --将当前目录转到 /test
             cd test     --将当前目录转到当前目录下的 test
 
 
    pwd  显示当前目录
 
    rmdir 删除空目录
 
    cat   显示文件内容
格式:  cat [option] 文件名
option:
    -n     显示行号
   -b     显示行号
   -E     显示行尾符
   -A     显示非打印字符
 
如:  cat /proc/cpuinfo
    more  分屏显示文件内容
    less  分屏显示文件内容
    还可通过箭头向上或向下移动看
 
 
    练习:看下 /etc/passwd 文件内容    
         看下 /etc/shadow 文件的内容
 
 
重定向
    重定向即改变输入或输出的方向
  
    输入重定向
<    
 
[root@s100 ~]# cat myfile
123456
123456
 
[root@s100 ~]# passwd <myfile
 
    输出重定向
>       以覆盖的方式输出重定向
>>      以追加的方式输出重定向
 
 
双向重定向  tee
一般的重定向,将信息写到文件后,屏幕就不会再显示了,tee 既能把信息显示在屏幕上,同时也能把信息写到文件,这就是称之的双向重定向
 
操作时一般用管道的形式
   如: uptime | tee myfile
 
 
 
重定向的编码
0    标准输入
1    标准输出
2    错误输出
 
由于信息的不同,于是重定向时就有变化了
1>   
2>  
 
cat myfile  abcd 1>a.txt 2>b.txt   
              --将标准输出定向到a.txt 错误信息定向到b.txt
 
cat myfile  abcd 1>a.txt 2>&1
      --将标准输出定向到a.txt 错误信息定向到标准输出的文件(即放到一块)
        实际上可以简写为
 
cat myfile abcd >& a.txt
        >/dev/null    --将信息定向到空设备,将所有的输出信息丢弃掉,不显示
 
 
管道  |
    
    管道主要用来将命令连接起来,将前一个命令处理的结果,传给后一个
    有时一些需求比较复杂,可能一个命令没办法完成,这里就可以用管道
    让每个命令处理一部分,最后完成需求。使用格式上,就是将命令用 “|” 连起来
 
例:显示每个用户的用户名和所使用的shell
cat /etc/passwd | awk -F: '{printf("%-15s%s\n",$1,$7)}'
 
cat /etc/passwd | awk -F: '{printf("%-15s%s\n",$1,$7)}'|sort -k2
 
例:看 /etc/passwd 中是否有root的行
cat /etc/passwd | grep root
 
例:看 /etc/passwd  有没有 shutdown 的行
cat /etc/passwd | grep shutdown
 
例:看无线网卡的地址
ifconfig | grep wlan0 | awk '{print $5}'
 
 
head  看文件头的前多少行
head /etc/passwd   --默认看前10行
 
head -n 5 /etc/passwd 看文件前 5 行
 
tail  看文件后的多少行
tail -n 3 /etc/passwd  看文件的最后3行
 
tail -f /etc/passwd    监控文件的变化
 
 
看文件的指定行,例只看文件的第3行
head -n 3 | tail -n 1
 
查看文件指定范围的行,如 3-5 行
head -n 5 /etc/passwd | tail -n 3
 
 
vi/vim 使用
    vi/vim 是linux下使用非常广泛的文本编辑器
 
    vim 的工作模式:
编辑模式
    该模式主要用于输入一些编辑指令,如 dd, u  等,不能输入文本内容
    它的特点是 左下角无任何提示字样     
 
    切换到该模式的方法:按左上解的 ESC 键
 
插入模式
    该模式主要用于插入文本,
    它的特点是 左下角有 “插入”字样
 
    切换到该模式的方法: i I a A o O s S
 
 
末行命令模式
    主要用来输入一些编辑指令,特点是左下角有个冒号(:)
 
    切换到该模式的方法:编辑模式下(如果不在编辑模式,要切到编辑模式),
                            输入冒号(:)
 
    常用的末行命令:
    w      保存
    q      退出
    wq 保存退出
    w! 不保存退出
    set number  显示行号
    set nonumber 不显示行号
 
 
编辑模式下的一些指令:
删除:
dd    删除行
DD    只清空当前行
50dd   删除50行
 
d^ 删除到行首
d$ 删除到行尾
 
撤消:
u   撤消
 
复制
yy 复制一行
5yy 复制5行
 
p 粘贴
 
方法二: v  进入可视化操作 -> 移动光标选内容  -> y (copy)  -> 移到光标到目标位置 -> 在编辑模式下 按 p
 
移动
方法一:先复制,再删除
方法二: v  进入可视化操作 -> 移动光标选内容  -> c (cut)  -> 移到光标到目标位置 -> 在编辑模式下 按 p
 
查找
/  +查找字符  (向下查找)
      如: /abc     --查看字符abc
        /yp      --查找字符yp
 
?  +查找字符 (向上查找)
      如: ?abc     --查看字符abc
         ?yp --查找字符yp
n   下一个
 
替换
要在末行命令模式下
 
范围s/原字符/新字符/参数
范围:
    1 第1行
    10   第10行
    $ 最后1行
    1,$ 从第1行到最后1行
    % 全文
 
参数
g 全局替换(适用于一行有多个符合条件的字符)
例:将1-5行中的#换成*
    :1,5s/#/*/g
 
例:把所有的#删除掉
    :%s/#//g
 

01、Linux基础命令的更多相关文章

  1. Linux基础命令层级图-01

    Linux基础命令层级图-01:

  2. linux基础命令:

    linux基础命令: 显示 echo 输出我写的内容 ls 查看当前目录的文件 pwd 查看当前目录 ifconfig 查看网卡信息 grep 过滤 -v 取反 -n man 查看命令的帮助信息 md ...

  3. Linux基础命令-文件与目录

    Linux基础命令-文件与目录 参考:<鸟哥linux私房菜>五-七章,17/12/5复习,18/01/15复习 文件权限 rwx421:用户,用户组,其他 umask查看默认权限:000 ...

  4. [转帖]linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习)

    linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习) https://www.cnblogs.com/caozy/p/9261224.html 总结的挺好的 ...

  5. Linux 基础命令及基本目录

    Linux 基础命令及基本目录 一.网卡 1.网卡配置文件路径 ​ /etc/sysconfig/network-scripts/ifcfg-eth0 配置文件: TYPE=Ethernet # 以太 ...

  6. 第四节,Linux基础命令

    第四节,Linux基础命令 命令是系统操作员对系统传入的指令,传入指令后回车,系统接收到指令做出相应的行为 1.查看用户位于系统什么位置 [pmd]检查操作用户位于系统的什么位置 命令         ...

  7. 【Python之路】第一篇--Linux基础命令

    pwd 命令 查看”当前工作目录“的完整路径 pwd -P # 显示出实际路径,而非使用连接(link)路径:pwd显示的是连接路径 .   表示当前目录 ..  表示上级目录 /  表示根目录 ls ...

  8. linux基础命令学习笔记(二)

    linux基础命令学习笔记(二) 1.kill :终止进程  kill pid (唯一标示一个进程) kill -9  强制终止  kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...

  9. 2.Linux基础命令

    linux内一切皆文件,没有文件夹只有目录,目录也是一种文件 1.一些常用按键: 将鼠标的光标从虚拟机里切换回来:Ctrl+Alt 拖动Ubuntu内的对话框:Alt键+鼠标左键拖动 清屏:Ctrl+ ...

  10. linux基础命令一

    linux基础命令一 1.date命令 date命令介绍:显示或者设置系统日期 date命令的语法: 显示日期:date  [options...]  [+FORMAT] FORMAT:为显示日期的格 ...

随机推荐

  1. testcontainers 方便的db测试框架

    testcontainers是一个强大,简单,基于容器的db测试解决方案 目前已经支持了主流的开发语言 参考资料 https://github.com/testcontainers/testconta ...

  2. SpringBootThymeleaf案例

    一.添加依赖 <!-- 添加thymeleaf模版的依赖 --> <dependency> <groupId>org.springframework.boot< ...

  3. oracle-报错 RMAN-03002,RMAN-06172

    RMAN> restore standby controlfile from "/data/oracle/contral.ctl"; Starting restore at ...

  4. OAuth2、OpenID、SMAL 对比

    对比点 OAuth2.0 OpenID SMAL2 票据格式 JSON or SAML2 JSON XML 支持授权 Yes Yes Yes 支持认证 “伪认证” Yes Yes 创建年份 2005 ...

  5. .NET CORE编写控制台程序应有的优雅姿势(转载)

    原文地址:https://www.cnblogs.com/zuowj/p/11107243.html 本文所说的编写控制台程序应有的“正确”方法,我把正确二字加上引号,因为没有绝对的正确,因人而异,因 ...

  6. Linux基础及入门介绍

    一.linux发展历程 ①1969年unix诞生贝尔实验室 ②谭宁邦:minix unix ③斯托曼(stallman),公司:自由软件基金会(FSF) 项目:GNU 规则:GPL(所有人可以自由传播 ...

  7. 代码实现一个蛇形led走马灯

    什么叫走马灯? 走马灯又叫流水灯,灯不断的走动,像流水一样,动态显示. makecode图形化编程见:http://bbs.kittenbot.cn/forum.php?mod=viewthread& ...

  8. C#快速入门指南

    C# C#集成开发环境结构结构体枚举接口派生类全析 集成开发环境 Visual Studio 结构 using System; 包含 System 命名空间 class hello{ /*注释*/ s ...

  9. c++小学期大作业攻略(二)整体思路+主界面

    写在前面:如果我曾经说过要在第一周之内写完大作业,那……肯定是你听错了.不过如果我在写的时候有攻略看的话应该可以轻松地在4~5天内做完,然后觉得写攻略的人是个小天使吧(疯狂暗示).出于给大家自由发挥的 ...

  10. git自动提交脚本

    每次在linux都要重新一遍一遍敲着这些重复的代码,我想着能够优化一下,做个一键脚本,减少重复劳动. #!/bin/bash git status read -r -p "是否继续提交? [ ...