当前位置:首页 > 科技  > 软件

17个有用的CLI命令,作为前端工程师,你需要知道一下

来源: 责编: 时间:2024-01-02 09:31:58 165观看
导读作为前端开发工程师,我们需要了解哪些命令?如果您熟悉这些命令,它们将大大提高您的工作效率。1. tree小伙伴们,你们知道如何列出一个目录的文件结构吗?它在显示文件之间的目录关系方面做得很好,这真的很酷。commands├──

作为前端开发工程师,我们需要了解哪些命令?如果您熟悉这些命令,它们将大大提高您的工作效率。8DR28资讯网——每日最新资讯28at.com

8DR28资讯网——每日最新资讯28at.com

1. tree

小伙伴们,你们知道如何列出一个目录的文件结构吗?8DR28资讯网——每日最新资讯28at.com

它在显示文件之间的目录关系方面做得很好,这真的很酷。8DR28资讯网——每日最新资讯28at.com

commands├── a.js├── b.js├── c.js├── copy-apps│   └── fe-apps│       └── a.js├── fe-apps│   └── a.js├── test.log└── xxx    └── yyy

在此之前,您需要安装命令树。8DR28资讯网——每日最新资讯28at.com

brew install tree

然后只需在文件目录中执行tree即可。8DR28资讯网——每日最新资讯28at.com

8DR28资讯网——每日最新资讯28at.com

2.wc

wc 是 word count 的缩写,常用于文件统计。它可以统计字数、行数、字符数、字节数等。8DR28资讯网——每日最新资讯28at.com

我经常用它来计算文件中的代码行数。8DR28资讯网——每日最新资讯28at.com

8DR28资讯网——每日最新资讯28at.com

3.du

打印出一个目录的文件大小信息。我们使用它的频率较低,但它是一个非常值得学习的命令。8DR28资讯网——每日最新资讯28at.com

  • du -h:打印出适合人类阅读的信息。
  • du -a:列出目录中文件大小的信息;
  • du -s:只显示总大小,不显示具体信息。
➜  commands git:(master) ✗ du0  ./xxx/yyy0  ./xxx0  ./fe-apps0  ./copy-apps/fe-apps0  ./copy-apps0  ./.git/objects/pack0  ./.git/objects/info0  ./.git/objects8  ./.git/info104  ./.git/hooks0  ./.git/refs/heads0  ./.git/refs/tags0  ./.git/refs136  ./.git168  .
➜  commands git:(master) ✗ du -h  0B  ./xxx/yyy  0B  ./xxx  0B  ./fe-apps  0B  ./copy-apps/fe-apps  0B  ./copy-apps  0B  ./.git/objects/pack  0B  ./.git/objects/info  0B  ./.git/objects4.0K  ./.git/info 52K  ./.git/hooks  0B  ./.git/refs/heads  0B  ./.git/refs/tags  0B  ./.git/refs 68K  ./.git 84K  .

8DR28资讯网——每日最新资讯28at.com

➜  commands git:(master) ✗ du -ha4.0K  ./a.js  0B  ./xxx/yyy  0B  ./xxx  0B  ./fe-apps/a.js  0B  ./fe-apps4.0K  ./test.log  0B  ./copy-apps/fe-apps/a.js  0B  ./copy-apps/fe-apps  0B  ./copy-apps4.0K  ./c.js4.0K  ./.git/config  0B  ./.git/objects/pack  0B  ./.git/objects/info  0B  ./.git/objects4.0K  ./.git/HEAD4.0K  ./.git/info/exclude4.0K  ./.git/info4.0K  ./.git/description4.0K  ./.git/hooks/commit-msg.sample8.0K  ./.git/hooks/pre-rebase.sample4.0K  ./.git/hooks/pre-commit.sample4.0K  ./.git/hooks/applypatch-msg.sample4.0K  ./.git/hooks/fsmonitor-watchman.sample4.0K  ./.git/hooks/pre-receive.sample4.0K  ./.git/hooks/prepare-commit-msg.sample4.0K  ./.git/hooks/post-update.sample4.0K  ./.git/hooks/pre-merge-commit.sample4.0K  ./.git/hooks/pre-applypatch.sample4.0K  ./.git/hooks/pre-push.sample4.0K  ./.git/hooks/update.sample 52K  ./.git/hooks  0B  ./.git/refs/heads  0B  ./.git/refs/tags  0B  ./.git/refs 68K  ./.git4.0K  ./b.js 84K  .

8DR28资讯网——每日最新资讯28at.com

du -sh

8DR28资讯网——每日最新资讯28at.com

4. alias

alias命令用于设置命令的别名。如果您仅键入别名,将列出所有当前别名设置。8DR28资讯网——每日最新资讯28at.com

8DR28资讯网——每日最新资讯28at.com

让我们尝试为 git status 设置一个别名8DR28资讯网——每日最新资讯28at.com

alias gs="git status"

8DR28资讯网——每日最新资讯28at.com

值得注意的是:如果你想让gs命令永久存在,你应该在.profile或.zshrc中设置它。8DR28资讯网——每日最新资讯28at.com

5.grep

我们经常需要查找服务器上日志文件的内容,grep将是我们得心应手的帮手。8DR28资讯网——每日最新资讯28at.com

有一个日志文件test.log。它包含以下内容:8DR28资讯网——每日最新资讯28at.com

const a = 1const b = 2const c = 3
console.log(a + b + c)

如何突出显示包含 a 字符的位置?这很容易,不是吗?8DR28资讯网——每日最新资讯28at.com

grep a test.log

8DR28资讯网——每日最新资讯28at.com

6.cat

cat 的主要用途是查看文件的内容并将其打印在屏幕上。8DR28资讯网——每日最新资讯28at.com

但它至少还有一些其他用途。8DR28资讯网——每日最新资讯28at.com

1.清除a.js的内容8DR28资讯网——每日最新资讯28at.com

➜  commands git:(master) ✗ cat a.js // There are two lines of code in a.jsconst a = 'fatfish'
console.log(a)%➜  commands git:(master) ✗ cat /dev/null > a.js // clear the contents of a.js➜  commands git:(master) ✗ cat a.js // The content in a.js is cleared.➜  commands git:(master) ✗

8DR28资讯网——每日最新资讯28at.com

2.将a.js的内容复制到b.js

➜  commands git:(master) ✗ cat a.jsconst name = 'fatfish'console.log(name)➜  commands git:(master) ✗ cat b.js // No content in b.js➜  commands git:(master) ✗ cat a.js > b.js // Copy the contents of a.js to b.js➜  commands git:(master) ✗ cat b.js // The content in b.js is the same as in a.jsconst name = 'fatfish'console.log(name)➜  commands git:(master) ✗ cat a.jsconst name = 'fatfish'console.log(name)

8DR28资讯网——每日最新资讯28at.com

3.将a.js的内容添加到c.js的最后一个字符8DR28资讯网——每日最新资讯28at.com

➜  commands git:(master) ✗ cat a.jsconst name = 'fatfish'console.log(name)%➜  commands git:(master) ✗ cat c.jsconst age = 100console.log(age)➜  commands git:(master) ✗ cat a.js >> c.js➜  commands git:(master) ✗ cat c.jsconst age = 100console.log(age)const name = 'fatfish'console.log(name)

8DR28资讯网——每日最新资讯28at.com

7.clear

有时候,我们需要在终端中进行一些操作,这样屏幕上的内容就足以让我们感到烦恼了。8DR28资讯网——每日最新资讯28at.com

如何清除它们?我们需要逐行删除它们吗?8DR28资讯网——每日最新资讯28at.com

8DR28资讯网——每日最新资讯28at.com

8.cp

cp命令用于复制文件或目录。8DR28资讯网——每日最新资讯28at.com

cp -f:当要复制的文件覆盖已有的目标文件时,不会有提示信息。8DR28资讯网——每日最新资讯28at.com

cp -r:如果复制的文件是目录文件,则复制该目录下的所有子目录和文件。8DR28资讯网——每日最新资讯28at.com

➜  commands git:(master) ✗ ls -Ra.js      b.js      copy-apps fe-apps./copy-apps:./fe-apps:// 1. copy a file➜  commands git:(master) ✗ cp a.js fe-apps➜  commands git:(master) ✗ ls -Ra.js      b.js      copy-apps fe-apps./copy-apps:./fe-apps:a.js➜  commands git:(master) ✗ cp fe-apps copy-appscp: fe-apps is a directory (not copied).// 2. copy a directory➜  commands git:(master) ✗ cp -rf fe-apps copy-apps➜  commands git:(master) ✗ ls -Ra.js      b.js      copy-apps fe-apps./copy-apps:fe-apps./copy-apps/fe-apps:a.js./fe-apps:a.js

8DR28资讯网——每日最新资讯28at.com

9.cd

这篇文章肯定没什么技术性,因为关于 cd 真的没什么可写的,作为一个开发者,谁不熟悉它呢?8DR28资讯网——每日最新资讯28at.com

也许你是对的,但我只是想说 cd - 可以返回到你上次访问的目录。我认为这是一个好技巧。8DR28资讯网——每日最新资讯28at.com

8DR28资讯网——每日最新资讯28at.com

10. ls

这是一个非常常用的命令,它用于显示文件目录的内容列表。8DR28资讯网——每日最新资讯28at.com

它至少可以通过 3 种方式使用。8DR28资讯网——每日最新资讯28at.com

  • ls -a:显示所有文件和目录(包括以.目录开头的)
  • ls -A:显示所有文件和目录(不包括以.directory开头的目录)
  • ls -R:显示所有文件和目录,如果目录中有文件,则按顺序列出

8DR28资讯网——每日最新资讯28at.com

11.rm

它用于删除文件或目录。8DR28资讯网——每日最新资讯28at.com

rm -i:将目录下的文件逐个删除,删除前会询问是否删除该文件。8DR28资讯网——每日最新资讯28at.com

8DR28资讯网——每日最新资讯28at.com

rm -r:一起处理指定目录及其子目录下的所有文件(注:不删除文件。)8DR28资讯网——每日最新资讯28at.com

rm -f:用于强制删除文件或目录。8DR28资讯网——每日最新资讯28at.com

8DR28资讯网——每日最新资讯28at.com

12.tail

我想你一定也有在服务器上查看日志内容的经历,tail绝对是一个好帮手。8DR28资讯网——每日最新资讯28at.com

tail -f filename 会将 filename 尾部的内容显示在屏幕上,当其内容发生变化时,您将在屏幕上看到最新的内容。8DR28资讯网——每日最新资讯28at.com

8DR28资讯网——每日最新资讯28at.com

13.MV

有时我们想要更改一个文件或目录的名称,或者将其移动到另一个地方,那么我们可以使用 mv 命令。8DR28资讯网——每日最新资讯28at.com

1.修改文件名8DR28资讯网——每日最新资讯28at.com

➜  commands git:(master) ✗ lsa.js➜  commands git:(master) ✗ mv a.js xxx.js➜  commands git:(master) ✗ lsxxx.js➜  commands git:(master) ✗

8DR28资讯网——每日最新资讯28at.com

2. 将文件移动到其他目录8DR28资讯网——每日最新资讯28at.com

➜  commands git:(master) ✗ ls -Ra.js    fe-apps./fe-apps:xxx.js➜  commands git:(master) ✗ mv a.js fe-apps➜  commands git:(master) ✗ ls -Rfe-apps./fe-apps:a.js   xxx.js

8DR28资讯网——每日最新资讯28at.com

14.touch

我经常使用 touch 命令来创建新文件,尽管它是用来修改文件或目录的时间属性的。8DR28资讯网——每日最新资讯28at.com

8DR28资讯网——每日最新资讯28at.com

15.which

如果你想查看某个命令的具体路径,可以使用which。8DR28资讯网——每日最新资讯28at.com

➜  commands git:(master) ✗ which node/Users/dz0400229/.nvm/versions/node/v16.0.0/bin/node➜  commands git:(master) ✗ which npm/Users/dz0400229/.nvm/versions/node/v16.0.0/bin/npm➜  commands git:(master) ✗ which npx/Users/dz0400229/.nvm/versions/node/v16.0.0/bin/npx➜  commands git:(master) ✗

16.mkdir

是的,您以前肯定使用过这个命令,而且没什么可说的!8DR28资讯网——每日最新资讯28at.com

但是mkdir -p dirname确实是我们很少使用的东西,它是用来做什么的呢?8DR28资讯网——每日最新资讯28at.com

➜  commands git:(master) ✗ lsa.js      b.js      copy-apps fe-apps➜  commands git:(master) ✗ mkdir xxx/yyy // You cannot create the yyy directory because the xxx directory does not existmkdir: xxx: No such file or directory➜  commands git:(master) ✗ mkdir -p xxx/yyy // `-p` will check if the xxx directory already exists, and create it if it doesn't.➜  commands git:(master) ✗ lsa.js      b.js      copy-apps fe-apps   xxx➜  commands git:(master) ✗ ls -Ra.js      b.js      copy-apps fe-apps   xxx./copy-apps:fe-apps./copy-apps/fe-apps:a.js./fe-apps:a.js./xxx:yyy./xxx/yyy:

8DR28资讯网——每日最新资讯28at.com

17.whoami

显示用户名。8DR28资讯网——每日最新资讯28at.com

➜  commands git:(master) ✗ whoamidz0400229

总结

以上就是我今天想与你分享的全部内容,如果你觉得有用的话,请记得点赞我,关注我,并将其文章分享给的朋友,也许能够帮助到他。8DR28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-55351-0.html17个有用的CLI命令,作为前端工程师,你需要知道一下

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 深度揭秘JUnit5与Mockito的单元测试神秘面纱

下一篇: 深度揭秘JUnit5与Mockito的单元测试神秘面纱

标签:
  • 热门焦点
Top