uMtMu
Table of Contents
- 1. Yazılar
- 1.1. onthewire
- 1.2. CMD CHALLENGE
- 1.3. Küçük şeyler :)
- 1.4. Komut: patch İncelenenecek
- 1.5. Komut: cp cp -R ~/files ~/files-backup # tüm dizin alt yapısını ve içeriğini kopyala cp -s ~/myfiles/file*.txt ~/myfiles2 # tüm file*.txt dosyalarının sembolik bağlantılarını ~/myfiles2 dizini altına oluşturur. Sembolik bağlantılar,
- 1.6. Komut: > ve 2>
- 1.7. Komut: alias
- 1.8. Komut: cd cd - #bir önceki çalışılan dizine geri döner cd ~ #kullanici adi adının ev dizinine gider
- 1.9. Komut: ls ls ~ /usr #birden fazla dizinin içi listelenebilir
- 1.10. Komut: chmod chmod g+s directory #alt dizinlerinin grubunu sabitleme
- 1.11. ızin ve sahiplik bilgilerini koruyarak dosya transferi
- 1.12. Veri içindeki eşsiz satırları ve sayılarını bulmak sort data | uniq -u #Eşsiz satırlar sort data | uniq -c #Satırların tekrar sayıları
- 2. Bağlantılar
1 Yazılar
1.1 onthewire
1.1.1 rot13
tr 'A-Za-z' 'N-ZA-Mn-za-m'
1.2 CMD CHALLENGE
1.2.1 hello_world/
- echo "hello world"
- echo 'hello world'
1.2.2 current_working_directory
- pwd
- pwd
1.2.3 list_files
- ls
- ls
1.2.4 list_files_adv
- ls -aF
- ls -laF -C1
1.2.5 nested_dirs
- find . -name -exec cat {} \;
- cat ./…/\ \ /.\ .the\ flag.txt
1.2.6 print_file_contents
- cat access.log
- cat access.log
1.2.7 last_lines
- tail -n 5 access.log
- tail -n 5 access.log
1.2.8 find_string_in_a_file
- grep GET access.log
- grep 'GET' access.log
1.2.9 find_tabs_in_a_file
- grep -P "\t" file-with-tabs.txt | wc -l
- grep -P '\t' file-with-tabs.txt | wc -l
1.2.10 seach_for_file_containing_string
- grep 500 * | cut -d':' -f1 | uniq
- grep -l 500
1.2.11 search_by_file_extension
- ls access.log*
- find . -name 'access.log*'
1.2.12 search_for_string_in_files_recursive
- grep -r "class" | grep me.py | cut -d':' -f2
- grep -h 500 */access.log
1.2.13 extract_ip_address
- find . -name 'access.log*' -exec cat {} + | cut -d' ' -f1
- grep -Pho '^\d+\.\d+\.\d+\.\d+' */access.log
1.2.14 delete_files
- find . -exec rm -rf {} +
- find . -delete
1.2.15 count_files
- ls | wc -l
- ls | wc -l
1.2.16 simple_sort
- cat access.log | sort
- sort access.log
1.2.17 count_string_in_line
- grep "GET" access.log | wc -l
- grep -c "GET" access.log
1.2.18 split_on_a_char
- awk '{ split($0,a,";"); } END {for(k in a) {print k}}' split-me.txt | sort -n
- tr ';' '\n' < split-me.txt
tr command
1.2.19 print_number_sequence
- seq 1 100 | tr '\n' ' '
- echo $(seq 1 100)
1.2.20 remove_files_with_a_dash
- find . -name '-' -delete
- rm ./-*
1.2.21 remove_files_with_extension
- rm -rf */.doc
- rm */.doc
1.2.22 remove_files_without_extension
- find . ! -name '.txt' -a ! -name '.exe' -delete
- find . -type f -regextype posix-extended ! -regex ".*(\.txt|\.exe)$" -exec rm {} +
1.2.23 replace_text_in_files
- find -name '*.txt' -exec sed -i 's/challenges are difficult//gp' {} +
- sed -i 's/challenges are difficult//g' */.txt
1.2.24 sum_all_numbers
- cat sum-me.txt | paste -sd+ | bc
- paste -sd+ sum-me.txt | bc
1.2.25 just_files
- find . -type f | rev | cut -d'' -f1 | rev # find . -type f | awk -F'' '{print $NF}'
- find -type f -printf '%f\n'
1.3 Küçük şeyler :)
1.3.1 aranan dosyaların sonuna ekleme
find ~ -name file_name | xargs sed -i '$a\line2add'
1.3.2 ~ altındaki tüm GIT repolarının statüsleri
/bin/bash find /home/ -name ".git" 2> /dev/null | sed 's/\/.git/\//g' | \ awk '{\ print "-------------------------\n\033[1;32mGit Repo:\033[0m " $1;\ system("git --git-dir="$1".git --work-tree="$1" status")\ }'
1.4 Komut: patch İncelenenecek
1.5 Komut: cp cp -R ~/files ~/files-backup # tüm dizin alt yapısını ve içeriğini kopyala cp -s ~/myfiles/file*.txt ~/myfiles2 # tüm file*.txt dosyalarının sembolik bağlantılarını ~/myfiles2 dizini altına oluşturur. Sembolik bağlantılar,
Windowstaki kısayollar gibidir cp -R -s ~/myfiles ~/myfiles2 # tüm dizinleri oluşturur ve içindeki tüm dosyaların sembolik bağlantılarını oluşturur cp -u * bak # Dizindeki dosyaları eğer kaynak daha yeni ise günceller cp -v *.txt dir # kopyalama işleminin durumunu gösterir cp -p file.txt file.txt.bak # sahiplik ve izin bilgileri ile kopyalar
1.6 Komut: > ve 2>
> # stdout
2> # stderr
1.7 Komut: alias
#Kullanışlı kısa Ubuntu aliasları alias e='exit'
alias c='clear'
alias 1.='cd ..'
alias 2.='1.; 1.'
alias 3.='1.;2.'
alias ag='sudo apt-get'
alias agi='ag install'
alias agu='ag update'
alias agr='ag remove -purge'
1.8 Komut: cd cd - #bir önceki çalışılan dizine geri döner cd ~ #kullanici adi adının ev dizinine gider
1.9 Komut: ls ls ~ /usr #birden fazla dizinin içi listelenebilir
-a | –all | tümünü listele |
-r | -reverse | sıralamayı ters yap |
-d | -directory | dizinin kendisini işaret eder |
-F | -classify | dizinlerin başına slash işareti koyar |
-h | -human-readable | |
-t | zamana göre sıralar | |
1.10 Komut: chmod chmod g+s directory #alt dizinlerinin grubunu sabitleme
1.11 ızin ve sahiplik bilgilerini koruyarak dosya transferi
- tar czf - | ssh user@host "cd; tar xzf -"
- scp -rp sourcedir user@dest:/dir