[Bash] Operations against files

Viewing file

Viewing the whole file:

cat package.json

Viewing the whole file with line number

cat -n package.json

Viewing the file with pagination

less package.json

Highlight the search term, for example, we want to looking for lodash inside package.json, what we can do is:

less package.json
/lodash

Press q to exit the viewing.

Open the file

open lib/npm.js
open lib/npm.js -a TextEdit ## when there is no default app accosiate with this file extension

Write content to file

Create a new file

touch file.txt
echo 'hi' > file.txt

It write 'hi' into file.txt, but if we do

echo 'hello world' > file.txt

It overwrites the hi.

If you want to append content to the end of file:

echo "hi" >> file.txt

Now inside file we have:

hello world
hi

Remove a file

rm file.txt

Move a file

If you want to move index.js to a src folder:

mv index.js src/index.js

Move all files from one dir to another dir

Move all the files under lib folder to src folder

mv lib/* src/

Move all the nested folder and files from lib to src:

cp -R lib/* src/

Copy file

Copy README.mnd to src folder:

cp README.md src/README.md

Rename a file

Rename index.js file to a.js:

mv index.js a.js

Find files in folder

Find all png files under images folder

find images/ -name "*.png"

It is case sensitive, to ignore case, need to add -i:

find images/ -iname "*.png"

Find and delete files

Find all javascript files under dist folder and delete those:

find dist/ -name "*.js" -delete

Find files and run cmd against files

Add -exec flag and following with commands.

find images/ -name "*.ng" -exec pngquant {} \
posted @ 2021-02-08 16:47  Zhentiw  阅读(63)  评论(0编辑  收藏  举报