首先我们先做出一个A.java,输出一些简单的内容。
命令1(重定向):java A > out
作用:执行java程序A,把它在标准输出的结果写到名为out的文件里
命令2(重定向):java A < in
作用:执行java程序A,将in中的文本当做输入
组合命令1和2:java A < in > out
在执行一个程序的时候,它的标准输入和标准输出可以被我们重定向到文件里面,使它可以从文件里读数据,往文件里面写数据。
命令3(管道):ls | more
作用:可以让ls的输出拿过来当做右侧more的输入,而more是按照一屏一屏的显示,所以最后是把ls的结果按一屏一屏的显示出来
Tips:按q退出
命令4:more [文件名] (cat [文件名])
作用:查看文件内容
命令5:cat > [文件名]
作用:向文件里写文本
Tips:按control+d
命令6:touch [文件名]
作用:仅仅使修改时间发生变化,而不改变文件内容
其他作用:touch [不存在的文件名]
效果:创建0字节的新文件
命令7:tail
作用:列出文件的最后几行
扩展命令:ls /usr/bin | tail -n 50
作用:列出最后50行
扩展命令:ls /usr/bin | tail -n 50 | more
作用:将得到的结果分屏显示
扩展命令:tail -f [文件名]
作用:若有程序持续向该文件写入内容,则可以实时查看该文件的内容
快捷键:control+z
作用:暂停一直在运行的程序
命令8:bg
作用:搭配control+z使用,把刚才暂停下来的程序放到后台运行
Tips:如果此时想中断该程序,只能使用px命令查看进程,获取到进程号后,根据进程号杀掉该进程
命令9:java A.java > log.txt &
作用:直接在后台运行A.java,并将输出结果写入log.txt
终端学习系列:
Mac终端学习(一):基本操作
Mac终端学习(二):操作历史
Mac终端学习(三):进程管理
Mac终端学习(四):重定向和管道
Mac终端学习(五):万能的grep
Mac终端学习(六):环境变量
Mac终端学习(七):网络配置