du查看文件夹大小

du -h —max-depth 1 fuchsia/

tee重定向到文件并打印到屏幕

功能说明:读取标准输入的数据,并将其内容输出成文件。
语 法:tee [-ai][—help][—version][文件…]
补充说明:tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件(此时文件不存在会创建新文件)。
参 数:
-a或—append 附加到既有文件的后面,而非覆盖它.
-i-i或—ignore-interrupts 忽略中断信号。
—help 在线帮助。
—version 显示版本信息。
举例:
echo 'Debug: this is a debug infor.' | tee _log
tee 程序接管了调试信息,然后将它打印出来并输出到(默认是覆盖)文件;
如果想以追加的方式输出到文件,则需要在调用 tee 时加上 -a选项:
echo 'Debug: this is a debug infor.' | tee -a _log

ls将目录下的文件单列输出

ls -1 , 注意这里是数字1,作用是每行只显示一个文件。

  1. $ ls *.jar -1
  2. honeywellFunctionBlocks-rt.jar
  3. honeywellFunctionBlocks-ux.jar
  4. honeywellFunctionBlocks-wb.jar
  5. honeywellSylkDevice-rt.jar
  6. honeywellSylkDevice-ux.jar
  7. ipcBaseDriver-rt.jar
  8. ipcCommBus-rt.jar
  9. ipcCommBus-wb.jar
  10. ipcProgrammingTool-rt.jar

fuser查看哪个进程占用某个文件系统

fuser -m /dev/sdb4
直接杀掉那个占用的进程
fuser -mk /dev/sdb4

hd打印二进制数据

将二进制数据以hex格式显示可以用hd命令。
cat uektk.blob | hd -A n -n 4 -s 4 -t x
-A参数指定显示offset的格式,d代表以十进制形式显示,x代表以十六进制形式显示,n代表不显示。
-n参数指定要显示的字节数。
-s参数指定从数据起始处跳过多少个字节。
-t参数指定显示的格式,x代表16进制。

cat将两个文件合成一个文件

直接用cat命令就可以。
cat u-boot.bin aeskey.blob > u-boot.imx

tr字符串转换

tr命令可以对字符串进行处理。
cat uektk.blob | tr -d '\n[:space:]'
-d代表从输入数据中删除-d后面的内容。’\n[:space:]’代表回车和空格。
cat uektk.blob | tr '[:lower:]' '[:upper:]'
将输入数据中的所有小写字母转换成大写字母。

date获取系统当前时间

time=$(date "+%Y-%m-%d %H:%M:%S")
echo "${time}"

  • date后面有一个空格,否则无法识别命令,shell对空格还是很严格的。
  • Y显示4位年份,如:2019;y显示2位年份,如:19。m表示月份;M表示分钟。d表示天,而D则表示当前日期,如:02/27/19(也就是2019.2.27)。H表示小时,而h显示英文月份,如Feb。s显示当前秒钟,单位为毫秒;S显示当前秒钟,单位为秒。

    tree以树状图列出目录内容

    tree -L 2
    -L level 限制目录显示层级

    watch监控命令结果变化

    watch[参数][命令]
    参数:
    -n 指定间隔时间,默认2妙执行一次命令
    -d 高亮显示变化的区域
    例:
    watch -d tree -L 2

    ln创建链接

    ln [参数][源文件或目录][目标文件或目录]
    参数:
    -s 软链接
    -v 显示详细处理过程
    例:
    1. $ ln -s ../../qt-everywhere-src-5.15.2 qt5
    2. $ ls -l
    3. total 24
    4. lrwxrwxrwx 1 build sudo 30 Feb 1 06:27 qt5 -> ../../qt-everywhere-src-5.15.2