🐧 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_table1.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  %2d\n" 11 12 13 14 
  printf "%2d  %2d  %2d  %2d  %2d\n" 15 16 17 18 
} > test_table1.txt
    
} > 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 name_of_your_directory  # Example: genomics_workshop_PoODL
mv test_table1.txt name_of_your_directory/ # Example: mv test_table1.txt genomics_workshop_PoODL
cd  name_of_your_directory
  

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
    # or
awk '{print NF}' test_table1.txt
    # or
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
    # or
less test_table1.txt | tr -s '\t' '[\n*]' | grep "1" | wc -l
  

Delete the File


rm test_table1.txt