Abstract
The fifth cut problem from HackerRank.
Cut 5#
Problem#
Given a tab-delimited file with several columns (tsv
format) print the first three fields.
Input Format#
A tab-separated file with lines of ASCII text only.
Constraints#
\(1 \le N \le 100\)
\(2 \le C \le 100\)
(\(N\) is the number of lines of text in the input file and \(C\) is the number of columns of data in the file)
Output Format#
The output should contain \(N\) lines. For each line in the input, print the first three fields.
Sample Input#
1 New York, New York[10] 8,244,910 1 New York-Northern New Jersey-Long Island, NY-NJ-PA MSA 19,015,900 1 New York-Newark-Bridgeport, NY-NJ-CT-PA CSA 22,214,083
2 Los Angeles, California 3,819,702 2 Los Angeles-Long Beach-Santa Ana, CA MSA 12,944,801 2 Los Angeles-Long Beach-Riverside, CA CSA 18,081,569
3 Chicago, Illinois 2,707,120 3 Chicago-Joliet-Naperville, IL-IN-WI MSA 9,504,753 3 Chicago-Naperville-Michigan City, IL-IN-WI CSA 9,729,825
4 Houston, Texas 2,145,146 4 Dallas-Fort Worth-Arlington, TX MSA 6,526,548 4 Washington-Baltimore-Northern Virginia, DC-MD-VA-WV CSA 8,718,083
5 Philadelphia, Pennsylvania[11] 1,536,471 5 Houston-Sugar Land-Baytown, TX MSA 6,086,538 5 Boston-Worcester-Manchester, MA-RI-NH CSA 7,601,061
Sample Output#
1 New York, New York[10] 8,244,910
2 Los Angeles, California 3,819,702
3 Chicago, Illinois 2,707,120
4 Houston, Texas 2,145,146
5 Philadelphia, Pennsylvania[11] 1,536,471
Solution#
#!/usr/bin/env bash
# shellcheck disable=SC2162
while read line_txt; do
echo "${line_txt}" | cut -f -3
done