常见命令
ls
:列出当前目录所有文件
cp
:复制命令
把文件a的内容复制到b文件
cp a.txt b.txt
把文件a复制到text目录下
cp a.txt ./test
采用绝对路径将skyler
目录及其目录下的多个子目录及其子文件复制到目录home
目录文件下命名为skyler
cp -ri /sda/skyer /home/skyler
建立新文件
touch bash.sh
删除文件
rm bash.sh
创建目录
mkdir video
删除目录video
rmdir video
删除当前目录下的所有文件
rm -f *
添加内容
添加内容到文件 bash.sh 里面
echo "hello" >> bash.sh
移动重命名文件
文件old重新命名为new
mv old.sh new.sh
文件移动到一个目录下
mv bash.sh ./viedo
更换目录
切换到用户目录
cd ~
返回上一层目录
cd ..
查找文件和目录
find filename
替换一个文件夹下所有文件内容中包含的某字符串
// 所有文件中的 /home/skyler 替换为 /home/hozon
find . -type f | xargs sed -i "s/\/home\/skyler/\/home\/hozon/g"
echo 语法
echo [OPTION]... [STRING]...
OPTION
-e
(激活转义字符)
-n:do not output the trailing newline
-e:enable interpretation of backslash escapes
-E:disable interpretation of backslash escapes (default)
使用-e
选项时,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出。
字符 | 含义 |
---|---|
\a | 发出警告声 |
\b | 删除前一个字符 |
\c | 不产生进一步输出 ( \c 后面的字符不会输出) |
\f | 换行但光标仍旧停留在原来的位置 |
\n | 换行且光标移至行首 |
\r | 光标移至行首,但不换行 |
\t | 插入 tab |
\v | 插入 tab |
\\\ | 插入 \ 字符 |
if [ -e/d/f … ]
-e filename
如果 filename存在,则为真
-d filename
如果 filename为目录,则为真
-f filename
如果 filename为常规文件,则为真
-L filename
如果 filename为符号链接,则为真
-r filename
如果 filename可读,则为真
-w filename
如果 filename可写,则为真
-x filename
如果 filename可执行,则为真
-s filename
如果文件长度不为0,则为真
-h filename
如果文件是软链接,则为真
filename1 -nt filename2
如果 filename1比 filename2新,则为真。
filename1 -ot filename2
如果 filename1比 filename2旧,则为真。
if [ ! -d $num ]
如果不存在目录$num
ffmpeg
Video4linux2
(简称V4L2),是linux中关于视频设备的内核驱动。
2>&1 >/dev/null
1、文件描述符
Linux系统预留可三个文件描述符:0、1和2,他们的意义如下所示:
0
——标准输入(stdin)
1
——标准输出(stdout)
2
——标准错误(stderr)
2>/dev/null
意思就是把错误输出到“黑洞”
>/dev/null 2>&1
默认情况是1,也就是等同于1>/dev/null 2>&1
。意思就是把标准输出重定向到“黑洞”,还把错误输出2
重定向到标准输出1
,也就是标准输出和错误输出都进了“黑洞”
2>&1 >/dev/null
意思就是把错误输出2
重定向到标准出书1
,也就是屏幕,标准输出进了“黑洞”,也就是标准输出进了黑洞,错误输出打印到屏幕
$ command > /dev/null
/dev/null
是一个特殊的文件,写入到它的内容都会被丢弃;如果尝试从该文件读取内容,那么什么也读不到。但是 /dev/null
文件非常有用,将命令的输出重定向到它,会起到"禁止输出"的效果。
如果希望屏蔽 stdout
和 stderr
,可以这样写:
$ command > /dev/null 2>&1
cat
cat
:查看文件的内容、连接文件、创建一个或多个文件和重定向输出到终端或文件 用法:cat [选项] [文件]
$ cat hello.txt
以 IP 连接工控机
// neousys
ssh nvdia@10.4.13.144
windows PowerShell
远程复制
scp .\main.c nvidia@10.4.11.203:~/
scp nvidia@10.4.11.203:/home/nvidia/VisionWorks-SFM-0.90-Samples/3rdparty/opengl/EGL/* ./EGL/
硬盘格式化
格式化磁盘/dev/sdb,并在其上建立ext4格式的文件系统
$ mkfs.ext4 /dev/sdb
条件判断 if
Ubuntu实时刷新GPU使用情况
watch -n 1 nvidia-smi
Linux 下在Shell脚本中创建新终端
gnome-terminal -t " title-name" -x bash -c " sh ./run.sh;exec bash;"
-t 为打开终端的标题,便于区分。
-x 后面的为要在打开的终端中执行的脚本,根据需要自己修改就行了。
最后的exec bash;是让打开的终端在执行完脚本后不关闭。