Re: split a file or return shell variable to a program

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



vick Julius wrote:

> I have a text file I want to split. The file contains some sentences. 
> between sentences I have empty 1 line. I want to split this file and put 
> each sentence in a separate file with names 1, 2,3 ...
> do you have any idea to split it such as with awk or split?

You can't do it with split; that only handles the case where each
contains a fixed number of bytes or lines.

You can do it with awk easily enough, e.g.:

	#!/usr/bin/awk -f
	BEGIN {
		ofile = 0;
	}
	
	/^ *$/ {
		close(ofile);
		ofile++;
	}
	
	/[^ ]/ {
		print > ofile;
	}

> Here is my strategy:
> 
> I wrote a C program in which I call bash shell script to increment a 
> variable...
> 
> In the shell I defined the variable k such as:
> $export k=1
> in my bash script file,myFile,  for testing, I put
> echo $k
> let k+=1
> (or this expression k=`expr $k + 1`)
> echo $k
> 
> when I run this script file, it gives me
> 1
> 2
> 
> the problem is when I called form a C or C++ program, such
> system("echo $k");
> //this gives 1
> system("./myFile");
> // this display
> // 1
> //2
> system("echo $k");
> //here the problem, it display 1 not 2
> 
> I want to have the incremented value for k, i.e 2 not the original one.

Each process has its own set of environment variables. A process can
modify its own environment variables, but not those of another
process.

If you want to share state between processes, use a file.

-- 
Glynn Clements <glynn.clements@xxxxxxxxxx>
-
: send the line "unsubscribe linux-admin" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Newbie]     [Audio]     [Hams]     [Kernel Newbies]     [Util Linux NG]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Device Drivers]     [Samba]     [Video 4 Linux]     [Git]     [Fedora Users]

  Powered by Linux