Sponsored Content
Homework and Emergencies Homework & Coursework Questions Using C language to use system calls Post 302734105 by femchi on Wednesday 21st of November 2012 03:09:13 PM
Old 11-21-2012
Using C language to use system calls

I need to write a C program (not a C++ program) that allows some tasks to be preformed automatically from a menu-driven interface. Automate the following tasks:
1. Rename a file
2. Delete a file or a directory
3. Output Process Information
4. Execute “mode 644 ls -l”
5. Exit

I need to know what steps should I follow to achieve the result. is it possible to ask the user to enter all the names and commands in 1 line or I should ask him one by one.
thank you

Code:
#include <stdio.h>
#include <fcntl.h>
#include <sys/errno.h>

int main (void) 
{
	int ch;
	char oldfn;
	char newfn;
	
	printf("\tMenu:\n");
	printf("\t1: Rename a file\n");
	printf("\t2: Delete a file or a directory\n");
	printf("\t3: Output Process Information\n");
	printf("\t4: Execute \"mode 644 ls -l\"\n");
	printf("\t5: Exit\n");
	printf("\t Enter your choice: \n");
	scanf("%d",&ch); 
	do
	{
		switch (ch)
		{
			case 1:printf("Enter the name of file and the new name :\n");
			printf("old file name: ");
			scanf("%s",&oldfn);
			printf("new file name: ");
			scanf("%s",&newfn);
			if ( rename(const char *oldfn, const char *newfn) == 0  )
			{
				printf("file is renamed");
			}
			break;
			case 2:printf("case 2\n");
			break;
			case 3:printf("case 3\n");
			break;
			case 4:printf("case 4\n");
			break;
			case 5:printf("exit\n");
			break;
			default:printf("Enter a number between 1-5\n");
			exit(0);
		}
		scanf("%d",&ch);
		
	}
	while ((ch>=1)||(ch<=5));
		
}

Langara college, Vancouver, Canada - Miss Hengame Hamavand - CPSC 1280
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

System calls for cp and mv

Which system calls are made for operations cp and mv (2 Replies)
Discussion started by: gaurava99
2 Replies

2. UNIX for Dummies Questions & Answers

System calls?

open, creat, read, write, lseek and close Are they all primitive? :confused: *Another Question: is there a different between a system call, and an i/o system call? (2 Replies)
Discussion started by: PlunderBunny
2 Replies

3. Solaris

System calls ?

where can i find the differences in System calls between solaris and aix? also is it possible to find a comprehensive list of them? (1 Reply)
Discussion started by: TECHRAMESH
1 Replies

4. UNIX Desktop Questions & Answers

Using system calls

Hi, I'm new to UNIX system calls. Can someone share your knowledge as to how exactly system calls should be executed? Can they be typed like commands such as mkdir on the terminal itself? Also, are there any websites which will show me an example of the output to expect when a system call like... (1 Reply)
Discussion started by: ilavenil
1 Replies

5. Programming

System calls

why user is not able to switch from user to kernel mode by writing the function whose code is identical to system call. (1 Reply)
Discussion started by: joshighanshyam
1 Replies

6. BSD

system calls

what is the functions and relationship between fork,exec,wait system calls as i am a beginer just want the fundamentals. (1 Reply)
Discussion started by: sangramdas
1 Replies

7. UNIX for Dummies Questions & Answers

About system calls.

Hi all, I am new here . I want to know about system call in detail. As system calls are also function .How system identifies it.:) (2 Replies)
Discussion started by: vishwasrao
2 Replies

8. UNIX for Dummies Questions & Answers

system calls in C

Hello, how would i be able to call ps in C programming? thanks, ---------- Post updated at 01:39 AM ---------- Previous update was at 01:31 AM ---------- here's the complete system call, ps -o pid -p %d, getpit() (2 Replies)
Discussion started by: l flipboi l
2 Replies

9. Programming

Are system calls in c language only????

Hi friends, I have three questions. 1) What are system calls? 2) Is it necessary that system calls be in c language (in unix operating system)? 3) Importance of c language when programming in unix environment??? Looking forward to your wonderful replies! ... (2 Replies)
Discussion started by: gabam
2 Replies

10. Programming

System calls and C language low-level qualities???

Hi friends, I hope everyone is fine and doing well. I queried in my previous thread about the low-level qualities of C/C++ languages.I really thank you people for explaining, it was really helpful. One more ambiquity that I have in my mind is regarding the unix system calls like open, creat,... (1 Reply)
Discussion started by: gabam
1 Replies
XPRINTF_COMP(3) 					   BSD Library Functions Manual 					   XPRINTF_COMP(3)

NAME
free_printf_comp, new_printf_comp -- extensible printf compilation SYNOPSIS
#include <printf.h> void free_printf_comp(printf_comp_t pc); printf_comp_t new_printf_comp(printf_domain_t restrict domain, locale_t restrict loc, const char * restrict fmt); DESCRIPTION
To ameliorate some of the slowness caused by the extra overhead in extensible printf (see xprintf(5)), a compile/execute mechanism has been created. The new_printf_comp() function compiles the given format string, along with a printf domain (see xprintf_domain(3)) and an extended locale (see xlocale(3)), and returns a printf_comp_t structure. The domain may not be NULL, but the locale can be NULL, which means to use the current locale, either the per-thread locale if it was set, or else the global locale. Because the printf_comp_t structure records the domain and locale, care should be taken if either of these are changed. Once a printf_comp_t structure is created, it can be passed to one of the extensible printf execution variants, described in xprintf_exec(3), along with the necessary arguments. Creating the printf_comp_t structure needs to be done only once, but it can be passed to extensible printf execution variants any number of times. When the printf_comp_t structure is no longer needed, it should be passed to free_printf_comp() to release internal memory. RETURN VALUES
The new_printf_comp() function returns the new structure, or NULL on error (usually NULL domain or out of memory condition). SEE ALSO
xlocale(3), xprintf_domain(3), xprintf_exec(3), xprintf(5) Darwin Aug 19, 2012 Darwin
All times are GMT -4. The time now is 10:33 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy