General :: Extracting Columns From Multiple Files With Awk?
Sep 22, 2010
I'd like to extract a single column from 5 different files and put them gether in an output file. I saw a similar question for 2 input files, and the line of code workd very well, the code is:awk 'NR==FNR{a[NR]=$2; next} {print a[FNR], $2}' file1 file2I added the file3, file4 and file5 at the end, but it doesn't work. Does anyone know what do I have to do?
I want to merge columns (selectively) from several files and create a new file with the merge output. I saw some suggestions to use pr/paste to join the columns and then awk to pick-up the columns.
Code: pr -m -t -s file1 file2 | gawk '{print $4,$5,$6,$1}' But I have hundreds of files and I cannot manually pick up columns using awk as given in
I've been hitting my head against a wall for awhile with this one:As the last part of some data analysis I performing I would to construct a matrix from a series of different files. These files have the format:
Say I have a text file with10 columns. I need to reorder them based on a list of column numbers that will reorder them.
My problem is this:
If I want to cut out 5 columns (columns 1,2,3,9,10) in the order 1,10,2,9,3 then I have tried using:
Code: cut -f1,10,2,9,3 my_file.txt > reordered_file.txt But this just extracts the columns in order as if I used:
Code: cut -f1,2,3,9,10 my_file.txt > reordered_file.txt How can I cut these columns and place them into the new file in the order I specify?
While this might seem quite trivial, I will actually need to do this for a file containing ~14000 columns with ~12000 columns that I need to extract in a particular order.
I've searched everywhere and I can't come up with a good solution. For each line I need to find the average, min, and max. I've seen plenty of solutions where the number of columns is fixed, unfortunately for me these lines can get pretty large. My thought was to read each line individually into an array, loop through the array and find the avg, min, and max that way but i haven't had much luck. I can read each line using a while loop but I'm having trouble with the array part, or perhaps that's not the best solution?
I am an astronomy student using Ubunut 10.04, and a frequent user of IRAF ( an *nix image processing application geared toward astronomy). IRAF produces, amongst other things, a text document with various values on it (example below).
Code: K IRAF = NOAO/IRAFV2.14.1 version %-23s #K USER = name %-23s #K HOST = Balthazar computer %-23s #K DATE = 2010-04-29 yyyy-mm-dd %-23s
[Code]...
Now, the information I'm actually interested is the X and Y coordinates down towards the bottom (in this case, 973.505, 271.474).
I have about 800 of these output text files, and I was wondering if there's any sort of script or command that could go through them (presumably reading from a list of file names), and extract the coordinates. Ideally, the output would be a list of coordinates (i.e. X-coordinate, Y-coordinate).
I was trying to do a school assignment in LaTeX. The assignment involves having the page split into three columns: the first column is for the quote, the second is for a reaction, and the third is for questions. These columns must be able to break in the middle of a row. I was trying to accomplish this using LaTeX.
First, I tried the longtable environment, but that would not allow me to pagebreak in the middle of a row. Then, I tried parcolumns, but for some reason, the second "row" had a huge space between the first two words. Does anyone know of an environment suitable for this kind of work?
I have a folder with only 24 files named <number>.dat (i.e. 4.dat, 6.dat and so on) where <number> is between 0 and 256. Each file has just two columns of data and nothing else.
I'm trying to combine all the second columns ($2) together. I've been fiddling around with getline and so far have
which takes file 4.dat and adds $2 from 6.dat, but I want a single command to take each $2 from every file and add them to (for example) 4.dat (having $1 from 4.dat is no problem). A command that takes every file in the folder and grabs $2 and places them in a common file would be ideal. Frankly I can work around if you combine both columns from every file.
I don't know almost anything about it so I was thinking of asking this question from the experts.I recently downloaded the xPUD 0.9.2.I LOVE that OS!It's simple,fast and smart.I just would like to add some other programs to it somehow.Is that possible for ex. extracting the image,modifying files,then remaking the iso?(Talking in Windows7)I would like to add some programs like Wine and some games also.Please reply as soon as possible because the xpud site is down for bandwidth exceeded.
Each line of the file I am sorting is in the following format:
<url> <month> <day>
For example:
[URL]
I wrote the following to sort:
Code:
#!/usr/bin/perl $in = shift; chomp($in);
[code]....
The script worked fine for my small testing files, but failed in my input file. The input file is 18MB and containing more than 300,000 lines. The output will contains some lines like that:
I become to use tar with incremental feature for archiving data under ubuntu.But when I try to extract archive later under windows (using gnu tar also) it creates many directories like this:
I've been looking though different editors for one that has good printing support. Ideally it should be able to print C++ code with line numbers, syntax highlighting, multiple columns per page, customizable fonts and sizes and a print preview feature so that I can make sure it looks right before sending it to the printer. It appears that notepad++ had at least some of these features, but it is not available on linux. The best I could do so far is to copy/paste the output of 'cat -n foo.cpp' into oowriter and format it into two colums. I don't get synax highlighting though and I have to manually replace tabs with a few spaces as well as some excessive leading spaces before the line numbering.
After having downloaded unrar, I find I can't actually use it to extract rar files. Whenever I use the command unrar e filename.rar, (obviously using the correct filename), I just get told there's no such file or directory.
I am using XFCE spin Fedora, so my default archiver is Xarchiver. I have downloaded a 2 part .RAR file, and when I used to use them in Windows, I would tell WinRAR to extract the first part, and then it would automatically start extracting part 2 if it was in the same directory. When I try to do the same in Xarchiver it tells me "An error occurred! Please check the 'Store archiver output' option to see it." I don't know what 'store archiver output' is or how to access it. What do I need to do to extract both components and successfully join them?
I have a bunch of split Z files and I want to extract them but I cannot find how. To be more specific I have a file named foo which is compressed into files foo.0Z, foo.1Z foo.2Z. I have tried uncompress but does not work I have tried gunzip,gzip etc but no result either. Even 7zip will not do the work.
I'm trying to extract all files permissions and write them in a text file in order to use regular expression(using python) and search for world writeable files
I have a backup of a Windows OS done by Clonezilla but would like to know if its possible to extract the files from a Windows computer from the backup CD where the backup was saved . Can this be done and what software will be able to help.
I am new in Linux and I need to extract alot of zipped files (different format (e.g tar.gz, tar.gz2)) which are in subdirs and I do not want to go to each subdir and extract each file because it will take alot of time. Is there away to extract all files that are existing in dirs and subdir with "for loop" or is there a script that can do the job automatically.
Oftentimes, I want to restore a directory from a tar.gz backup file.When I extract the backup tar.gz, is there a way to make it only replace newer files in t directory?Currently, I have only been able to achieve this bydeleting the entire target directory and extracting the entire backup file. This is timeonsuming because the backups are sometimes hundreds of gigabytes.
is that my ar928x atheros wireless connection is severely slow. To fix it I've heard ndiswrap and so I've downloaded the XP driver from HP's support site (a pavilion dv7-1450us Notebook PC) and met a brick wall. The file is sp45222.exe and it contains seemingly no .bin .inf or .sys files that ndiswrap dearly requires. I've tried extracting it on a windows machine with UniExtract. This gives only three files one of which UniExtract can extract into a compilation of folders none of which have the required files. I've also attempted to use cabextract on my Ubuntubox, but not cabs come out. I have unshield, if that's relevant at all. What on Earth am I doing wrong?
I am trying to extract a .tgz file. I have used the command tar - xvwzf filename.tar but I get the following error: gzip: stdin: decompression OK, trailing garbage ignored tar: Child returned status 2 tar: Exiting with failure status due to previous errors root@test:/datastore/Newfolder# tar -xvwzf filename.tgz