“Linux-2020-spring-3-18”的版本间的差异

来自SUDA-HLT
跳到导航 跳到搜索
 
(未显示同一用户的3个中间版本)
第50行: 第50行:
  
 
== 文本文件查看命令 ==  
 
== 文本文件查看命令 ==  
−
    1、文本文件:ASCII文件也称为文本文件,这种文件在磁盘中存放时每个字符对应一个字节,用于存放对应的ASCII码。
+
 
−
    2、二进制文件:二进制文件是按二进制的编码方式来存放文件的。hexdump(hexadecimal octal dump)十六进制文件查看器
+
 
−
    3、cat 拼接(concatenate) (不跟参数的时候:默认将标准输入的内容标准输出)
+
文本文件 vs. 二进制文件
−
    4、tail(tail -n 3 a.txt:显示后三行;tail -f a.txt:若文件有增加显示增加的内容)
+
  文件中包含的字符都(绝大多数)是可见字符,则为文本文件
−
    5、wc:word count
+
 
−
    6、head:
+
cat 拼接(concatenate)  
−
    7、less/less is more:分屏/页 显示;空格 翻屏;上下箭头 按行移动;ctrl + f/b forward/backward;/ + 字符串或者正则表达式 进行搜索;:w 文件名 将文件另存
+
  不跟参数的时候,默认将标准输入stdin的内容输出到标准输出stdout
−
    8、man:在线文档online 离线offline;分屏展示的时候就调用了less。输入man man 的时候就会将man的说明文档调入,用less显示。输入 man printf (如果未指定数值,优先看作为命令的帮助文档);man 3 printf C语言的库 ; man -f printf 非常简洁的说明; man -k search 查找包含search的文件
+
 
 +
tail
 +
    tail -n 3 a.txt 显示后三行
 +
    tail -f a.txt:监控文件,很常用
 +
 
 +
wc(word count)
 +
  -n -c -w
 +
 
 +
head -n 3 a.txt
 +
 
 +
less 分屏显示
 +
  less is more,比more命令更强大
 +
  上下箭头 按行移动;
 +
  空格 forward翻屏
 +
  ctrl + f/b forward/backward翻屏
 +
  /regex 字符串或者正则表达式 进行搜索
 +
 
 +
man:在线文档
 +
  online在线;离线offline
 +
  可以查看9个类别的文档
 +
      1 用户命令
 +
      2 系统调用(内核函数)
 +
      3 库函数
 +
      7 杂项 miscellaneous(macro宏;micro微)
 +
      8 系统管理员命令,root可以调用
 +
  man命令显示显示结果时,就用less分屏
 +
      上课中出现了不能自圆其说的地方:我们把man.1.gz的文本文件另存为txt文件,然后用less直接打开,发现显示和man man的结果并不一样。
 +
      也就是说,man命令显示结果时,在分屏之前,应该还有一个什么命令,对格式进行解析。
 +
  输入man man 的时候就会将man的说明文档调入,用less显示
 +
  输入 man printf (如果未指定数值,会看printf作为命令的帮助文档)
 +
  man 3 printf C语言的库函数printf
 +
  man -f printf 非常简洁的说明
 +
  man -k search 查找包含search的文件
 +
 
 +
printf作为用户命令
 +
  $ printf "hi\n"
 +
  $ printf "hi%d%/10f\n" 10 1.32
 +
 
  
 
== 文件编辑器 ==
 
== 文件编辑器 ==
−
    1、vi --- vim:打开文件
+
 
−
          a.命令模式:按“Esc”回到命令模式;“h”“←”左;“k”“→”右;
+
vim (Vi IMproved)
−
          b.编辑模式/插入模式:按"i"进入编辑模式
+
  下节课
−
          c.末行模式:在命令模式下,输入“:”进入末行模式
+
  必须要掌握一个好的文本界面下的文本编辑器

2020年3月18日 (三) 03:22的最新版本

回顾上节课的内容

命令的语法

    cmd [opt]... [arg]...
    linux下大小写区分(-r reverse;-R recursive)
    选项推荐写到参数的前面

简单命令

    ls -l
    rwx r-x ---
    user(owner) group others

文件操作

cp的几种用法

   man cp 
   -t (target的意思)
   cp a.txt b.txt (a.txt,b.txt 命令行参数command-line arguments)
   cp a.txt b.txt Downloads/
   能不能用C语言写一个简化版的cp命令,思考命令行参数的处理
        int main(int arga,char *argc[])
   whereis cp
       /usr/share/man/man1/cp.1.gz  (1表示这个命令的类别:user command就对应1)
       /usr/share/man/man1/printf.1.gz (printf命令)
       /usr/share/man/man3/printf.3.gz(printf库函数,C语言)
       /bin/cp 这个命令的可执行文件,文件大小为126K(好复杂,说明功能很多)
   hexdump -C /bin/cp | less 看二进制文件的内容(十六进制);管道以后会讲(| less)
          hexadecimal
          decimal
          octal
          binary
    

mv

 mv x.c Downloads/
 

mkdir

    mkdir -p newdir/newdir/newdir  会创建三个嵌套的目录

rmdir 删除空目录

rm 删除文件或目录

 -f --force
 -i (interactive)     
 -r, -R, --recursive
 
 AM 上午Ante Meridiem
 PM 下午post meridiem


tab键自动补全文件名或命令名

文本文件查看命令

文本文件 vs. 二进制文件

 文件中包含的字符都(绝大多数)是可见字符,则为文本文件
 

cat 拼接(concatenate)

  不跟参数的时候,默认将标准输入stdin的内容输出到标准输出stdout

tail

   tail -n 3 a.txt  显示后三行
   tail -f a.txt:监控文件,很常用

wc(word count)

 -n -c -w

head -n 3 a.txt

less 分屏显示

 less is more,比more命令更强大
 上下箭头 按行移动;
 空格 forward翻屏
 ctrl + f/b forward/backward翻屏
 /regex 字符串或者正则表达式 进行搜索

man:在线文档

 online在线;离线offline
 可以查看9个类别的文档
      1 用户命令
      2 系统调用(内核函数)
      3 库函数
      7 杂项 miscellaneous(macro宏;micro微)
      8 系统管理员命令,root可以调用
 man命令显示显示结果时,就用less分屏
     上课中出现了不能自圆其说的地方:我们把man.1.gz的文本文件另存为txt文件,然后用less直接打开,发现显示和man man的结果并不一样。
     也就是说,man命令显示结果时,在分屏之前,应该还有一个什么命令,对格式进行解析。
 输入man man 的时候就会将man的说明文档调入,用less显示
 输入 man printf (如果未指定数值,会看printf作为命令的帮助文档)
 man 3 printf C语言的库函数printf 
 man -f printf 非常简洁的说明
 man -k search 查找包含search的文件

printf作为用户命令

 $ printf "hi\n"
 $ printf "hi%d%/10f\n" 10 1.32


文件编辑器

vim (Vi IMproved)

 下节课
 必须要掌握一个好的文本界面下的文本编辑器