Linux-2020-spring-3-18
回顾上节课的内容
命令的语法
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 分屏展示的时候就调用了less 输入man man 的时候就会将man的说明文档调入,用less显示 输入 man printf (如果未指定数值,会看printf作为命令的帮助文档) man 3 printf C语言的库函数printf man -f printf 非常简洁的说明 man -k search 查找包含search的文件
文件编辑器
1、vi --- vim:打开文件
a.命令模式:按“Esc”回到命令模式;“h”“←”左;“k”“→”右;
b.编辑模式/插入模式:按"i"进入编辑模式
c.末行模式:在命令模式下,输入“:”进入末行模式