Hôm qua mình có chia sẻ về cách đọc file trên linux thông qua các cách đặc biệt cái này vô cùng hữu hiệu khi các bạn tham gia các cuộc thi an toàn thông tin như CTF..... hoặc ứng dụng xử lý khi dùng trong các phần mềm liên quan container như docker chả hạn...
Bài phần trước:
Trong bài này mình sẽ chia sẻ về cách tạo 1 file mà không thông qua các editor như vim, vi áp dụng cho các chương trình bash shell khá hiệu quả:
1: Dùng lệnh echo cái này thì rất phổ thông rồi
hoặc thêm nội dung vào file
Lưu ý khi dùng echo thì > và >> khác nhau nhé các bạn 1 dấu > sẽ xóa toàn bộ dữ liệu cũ tạo mới và 2 dấu > sẽ thêm bên dưới các bạn tránh sài nhầm rồi mất dữ liệu.
2: Dùng lệnh cp
lệnh cp như ở phần trước thì nó dùng để đọc file tuy nhiên nó cũng có thể tạo ra 1 file mới bằng cách dùng lệnh như sau:
lần trước là cp dùng file stdout để in ra nội dung file thì lần này mình dùng stdin để đưa dữ liệu vào file như sau
3: Sử Dụng awk
4: Dùng lệnh busybox
5: dùng lệnh less.
lệnh less cho phép chúng ta đọc file thông thường tuy nhiên chúng ta dùng nó để tạo file mới khá ngon như sau:
sau đó các bạn nhấn v để chuyển qua giao diện nano để edit file.
6: sử dụng PIP
7: sử dụng lệnh screen
hoặc:
8: dùng sed
9: dùng lệnh openssl
hoặc:
10: dùng lệnh dd
Tạm thời 10 lệnh này đã.các lệnh này bạn muốn hiểu sâu nên đọc trên các trang man linux nhé.
Bài phần trước:
Bash:
https://vn-z.vn/threads/mot-so-cach-dung-lenh-de-doc-file-tren-linux-ma-ban-khong-tuong.21320/
Trong bài này mình sẽ chia sẻ về cách tạo 1 file mà không thông qua các editor như vim, vi áp dụng cho các chương trình bash shell khá hiệu quả:
1: Dùng lệnh echo cái này thì rất phổ thông rồi
Bash:
echo "data" > file.txt
Bash:
echo "data" >> file.txt
Lưu ý khi dùng echo thì > và >> khác nhau nhé các bạn 1 dấu > sẽ xóa toàn bộ dữ liệu cũ tạo mới và 2 dấu > sẽ thêm bên dưới các bạn tránh sài nhầm rồi mất dữ liệu.
2: Dùng lệnh cp
lệnh cp như ở phần trước thì nó dùng để đọc file tuy nhiên nó cũng có thể tạo ra 1 file mới bằng cách dùng lệnh như sau:
lần trước là cp dùng file stdout để in ra nội dung file thì lần này mình dùng stdin để đưa dữ liệu vào file như sau
Bash:
LFILE=file_to_write
echo "DATA" | cp /dev/stdin "$LFILE"
3: Sử Dụng awk
Bash:
LFILE=file_to_write
awk -v LFILE=$LFILE 'BEGIN { print "DATA" > LFILE }'
4: Dùng lệnh busybox
Bash:
LFILE=file_to_write
busybox sh -c 'echo "DATA" > $LFILE'
5: dùng lệnh less.
lệnh less cho phép chúng ta đọc file thông thường tuy nhiên chúng ta dùng nó để tạo file mới khá ngon như sau:
Bash:
less file_to_write
sau đó các bạn nhấn v để chuyển qua giao diện nano để edit file.
6: sử dụng PIP
Mã:
export LFILE=/tmp/file_to_save
TF=$(mktemp -d)
echo "open('$LFILE','w+').write('DATA')" > $TF/setup.py
pip install $TF
7: sử dụng lệnh screen
Bash:
LFILE=file_to_write
screen -L -Logfile $LFILE echo DATA
hoặc:
Bash:
LFILE=file_to_write
screen -L $LFILE echo DATA
8: dùng sed
Bash:
LFILE=file_to_write
sed -n "1s/.*/DATA/w $LFILE" /etc/hosts
9: dùng lệnh openssl
Bash:
LFILE=file_to_write
echo DATA | openssl enc -out "$LFILE"
Bash:
LFILE=file_to_write
TF=$(mktemp)
echo "DATA" > $TF
openssl enc -in "$TF" -out "$LFILE"
10: dùng lệnh dd
Bash:
LFILE=file_to_write
echo "DATA" | dd of=$LFILE
Tạm thời 10 lệnh này đã.các lệnh này bạn muốn hiểu sâu nên đọc trên các trang man linux nhé.