常用bash命令
Posted sold_out
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常用bash命令相关的知识,希望对你有一定的参考价值。
—
pwd 当前工作目录
cd(不加参数) 进root
cd(folder) 进入文件夹
cd .. 上级目录
cd ~ 返回root
cd - 返回上一个访问的目录
rm 文件名 删除
cat 文件名(|less) 在终端下查看文件
ls 列出目录下所有文件
cp 文件名 目标目录 将文件拷贝到目标目录下
~代表root 如:~/Document/CPP2/
mkdiv 新建文件夹
g++ 源文件名 编译源文件,产生a.out
./文件名 运行 例如:./a.out < 输入文件名 > 输出文件名
control+d 中断a.out运行
nano 编写脚本语言 ctrl+o存储
nano ....sh 打开
bash ....sh 运行脚本
echo "...$i..." 输出语句
—
mac os默认的shell也是bash,打开终端,默认就是bash;
如果在终端中输入指令bash:
taylors-Mac-mini:~ taylor$ bash
bash-3.2$
然后在bash-3.2$ xxxxxxx
下输入的指令,其实就相当于 bash ....sh 运行脚本
退出bash的脚本模式直接exit就回到了用户状态
—
#!/bin/sh 是指此脚本使用/bin/sh来解释执行,#!是特殊的表示符,其后面根的是此解释此脚本的shell的路径。
例子
#!/bin/bash 以bash shell来解释
#!/bin/csh 以csh shell来解释
#!/usr/bin/env python 以下代码由python来解释
—
- 批量图像格式转换
如果想将某目录下的所有jpg文件转换为png文件,只要在命令行模式下输入:
for %f in (*.jpg) do convert “%f” “%~nf.png”
- 批量图像resize
convert -resize 1024x768 xxx.jpg xxx1.jpg 将图像的像素改为1024*768,注意1024与768之间是小写字母x
—
- 查看命令的操作说明:man name
- 查看文件的类型和具体属性:file filename
- 查看类型:type name
- 查询文件位置(模糊查询,路径中含有关键字的所有文件):locate 关键字
- 查看文件/目录的所有属性(文件大小,类型,修改时间,所有者,文件权限等):ls filename -al
- 查看目录下包含隐藏文件在内的所有文件:ls -a/ls -A
- 同一个命令在两行中输入:行尾处\\Enter,自动进入下一行
—
- 环境变量:$PATH ,$代表后面接着一个变量,输出环境变量:echo $PATH; 若该变量为扩增变量内容时,则可用 "$变量名称" 或 ${变量} 累加内容,如下所示:『PATH="$PATH":/home/bin』;若该变量需要在其他子程序运行,则需要以 export 来使变量变成环境变量:
『export PATH』;export:自定义变量转成环境变量:export 变量名,分享自己的变量配置给后来呼叫的文件或其他程序 - 环境变量=全局变量,自定义变量=局部变量;
—
[root@www ~]# history [n]
[root@www ~]# history [-c]
[root@www ~]# history [-raw] histfiles
选项与参数:
n :数字,意思是『要列出最近的 n 笔命令行表』的意思!
-c :将目前的 shell 中的所有 history 内容全部消除
-a :将目前新增的 history 命令新增入 histfiles 中,若没有加 histfiles ,
则默认写入 ~/.bash_history
-r :将 histfiles 的内容读到目前这个 shell 的 history 记忆中;
-w :将目前的 history 记忆内容写入 histfiles 中!
范例一:列出目前内存内的所有 history 记忆
[root@www ~]# history
—
语法:wc [选项] 文件…
说明:该命令统计给定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所有指定文件的总统计数。字是由空格字符区分开的最大字符串。
该命令各选项含义如下:
- c 统计字节数。
- l 统计行数。
- w 统计字数。
这些选项可以组合使用。
输出列的顺序和数目不受选项的顺序和数目的影响。
总是按下述顺序显示并且每项最多一列。
行数、字数、字节数、文件名
如果命令行中没有文件名,则输出中不出现文件名。
例如:
$ wc - lcw file1 file2
4 33 file1
7 52 file2
11 11 85 total
举例分析:
1.统计demo目录下,js文件数量:
find demo/ -name "*.js" |wc -l
2.统计demo目录下所有js文件代码行数:
find demo/ -name "*.js" |xargs cat|wc -l 或 wc -l `find ./ -name "*.js"`|tail -n1
3.统计demo目录下所有js文件代码行数,过滤了空行:
find /demo -name "*.js" |xargs cat|grep -v ^$|wc -l
以上是关于常用bash命令的主要内容,如果未能解决你的问题,请参考以下文章