🐧 Linux Basics

View File in Linux


cat test_table1.txt
# or
less test_table1.txt  # Opens in a scrollable view. Press 'q' to exit.
  

List Contents in a Directory


ls <folder_name>
  

Task 1

Create the Following Table in test_table1.txt:

1  2  3  4  5
6  7  8  9  10
11 12 13 14
15 16 17 18
  

Solution 1 (Formatted Print)


touch test_table.txt
{
  printf "%2d  %2d  %2d  %2d  %2d\n" 1 2 3 4 5
  printf "%2d  %2d  %2d  %2d  %2d\n" 6 7 8 9 10
  printf "%2d  %2d  %2d  %2d\n" 11 12 13 14
  printf "%2d  %2d  %2d  %2d\n" 15 16 17 18
} > test_table.txt
  

Solution 2 (Here Document)


cat > test_table1.txt
1    2    3    4    5
6    7    8    9    10
11    12    13    14
15    16    17    18
(Ctrl+D to save)
  

Solution 3 (nano)


nano test_table1.txt
# Type the table, press Ctrl+X to exit, then Y to save
  

Solution 4 (vim)


vim test_table1.txt
# Press 'i' to insert text, then ':wq' to save and exit
  

Create Directory & Move File


mkdir genomics_workshop_PoODL
mv test_table1.txt genomics_workshop_PoODL/
cd genomics_workshop_PoODL
  

Basic File Statistics

Count Number of Lines


wc -l test_table1.txt
  

Count Number of Characters


wc -m test_table1.txt
  

Count Columns per Row


awk -F' ' '{print NF}' test_table1.txt
awk '{print NF}' test_table1.txt
while read line; do echo "$line" | wc -w; done < test_table1.txt
  

Count Occurrences of "1"


grep -o '1' test_table1.txt | wc -l
  

Count Words Containing "1"


grep -o '\S*1\S*' test_table1.txt | wc -l
less test_table1.txt | tr -s '\t' '[\n*]' | grep "1" | wc -l
  

Delete the File


rm test_table1.txt